我到底做错了什么。不是JS中的对象函数吗?
car.js
'use strict';
var Car = function(){
};
export default Car;
轿厢test.js
import {expect} from 'chai';
import {Car} from '../../src/car';
describe('car', () => {
it('should have a car to work with', () => {
expect(Car).to.be.an('object');
});
});
更新
我甚至可以把var留下来,不确定这是否有所不同,var仍然指向相同的东西,但我也可以这样做:
function Car(){
};
export default Car;
答案 0 :(得分:3)
a/an
测试该项的typeof
值。是的,函数是对象,但typeof
为"function"
。
这是typeof
为对象提供更多详细信息而不仅仅是"object"
的唯一地方(事实上,我想不出另一个; typeof new Date
是"object"
,typeof
正则表达式对象为"object"
,等等。 typeof
相当含糊,但在这种情况下是具体的。 :-) FWIW,我在贫穷的小博客上覆盖了类型检查:Say what?