如果我有一个使用 Javascript 函数,像这样......$(this)[0].element.id;
updateElement(){
$(this)[0].element.id;
}
我正在使用 Qunit,有没有一种方法可以模拟'this'我希望能够测试这个功能。
如果我有一个使用 Javascript 函数,像这样......$(this)[0].element.id;
updateElement(){
$(this)[0].element.id;
}
我正在使用 Qunit,有没有一种方法可以模拟'this'我希望能够测试这个功能。
使用函数apply或对象,您可以更改调用函数时call的值:Functionthis
var mock = ...
updateElement.call(mock);
this将mock在updateElement上面的调用中引用。
我假设,this那是指一些 jQuery 对象。您可以使用 jQuery 函数创建相应的对象,然后bind()将对象附加this到您的实际函数中:
// prepare the DOM objects
var $elem = $( '...' );
// prepare a bound function
var boundFct = updateElement.bind( $elem );
// execute your function
boundFct();