gpt4 book ai didi

javascript - 匿名函数: "object is not a function"

转载 作者:行者123 更新时间:2023-11-28 15:51:03 26 4
gpt4 key购买 nike

未捕获类型错误:对象不是函数

我决定将 writeMessage() 函数设为匿名;之前,当同时创建 writeMessage() 函数的另一个实例时,它总是会搞砸,导致文本输出困惑(两条“写入”的消息会放在一起并混合在一起)。

但是,我发现遇到了错误(如上所示)。 变量 object 是一个 jQuery 对象(例如:$('#myDivElement'))。

有什么想法可以解释这是为什么吗?谢谢。

function writeMessage(message,object){
(function(message,object,i){
var self = this;
setTimeout(function(){
if(i < message.length){
object.append(message.substr(i,1));
i++;
self(message,object,i);
}
}, 25);
}(message,object,0));
}

最佳答案

var self = this;

由于您在没有上下文的情况下调用该函数,因此 self 引用了 window 对象。 window 是一个对象(window.toString 应该给出类似 [object Window] 的内容)而不是函数,因此调用 self( message,object,i) 将不起作用。

相反,使用这个:

var self = arguments.callee;

关于javascript - 匿名函数: "object is not a function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20590446/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com