为何我2种写法一个出错另一个正常?
//《popup.js 》,调用background page的函数
var bkg = chrome.extension.getBackgroundPage();
bkg.test(function(result) {
alert(result);
});
// 《background.js》这是正常的写法
function test(func) {
func.call(this, 'fuck ');
}
// 《background.js》这样写就出错啦, whywhywhy?
function test(func) {
func('fuck ');
}
这个问题莫名其妙的就正常了。。。。 我也不知道原因
http://www.runoob.com/js/js-function-invocation.html
这个得看你func怎么写的了,call将func函数体中的this做了修改,func('fuck ');这样调用func中this为window,如果func调用了this而需要的是其他对象不是window可能会报错