我正在编写一系列测试来证明'this'在不同背景下的价值。
这是我目前的测试套件:
describe("this keyword", function(){
it('returns the global context of this', function(){
expect(globalThis()).toEqual(window);
});
it('returns the method context of this', function(){
expect(methodThis.showThis()).toEqual({ showThis : Function });
});
});
我的第二个测试不会传递此代码,即使它是确切的值:
var methodThis = {
showThis: function(){
return this;
}
};
所有这个函数正在返回对象内部的上下文。
为什么即使将正确的toEqual值传递给toEqual?
,此测试也会失败答案 0 :(得分:1)
您可以使用jasmine.any来比较功能类型:
describe("this keyword", function(){
it('returns the method context of this', function(){
expect(methodThis.showThis()).toEqual({ showThis : jasmine.any(Function) });
});
});