gpt4 book ai didi

JavaScript自执行函数 "is not a function"

转载 作者:行者123 更新时间:2023-12-03 02:57:34 25 4
gpt4 key购买 nike

我有:

var Init = (function() {
my js goes here
})();

当页面加载时,我的 js 正确执行。我也有:

$('form :checkbox').change(function() {
Init();
});

但是 firebug 说 Init 不是一个函数。

最佳答案

它不是一个函数。

(function() {
...
})()

立即计算匿名函数。在这种情况下评估结果显然不会返回函数对象:-)

考虑:

f = (function() {
return "not a function :("
})()
alert(f())

f = (function() {
return function () { return "Yay!" }
})()
alert(f())

祝你编码愉快:)

<小时/>

这是一个函数,它将“执行一次某些内容”,然后“返回该内容以供稍后执行”。 (参见 Slaks 回答中的“您可以[分配]一个函数或调用它;您不能同时执行这两个操作...”。)但是,我不会这样做。 p>

Init = (function () {
function Init () {
alert("whee!")
}
Init()
return Init
})()
Init()

这是 CD Sanchez 的另一个解决方案(更短/更清晰)(请参阅评论),它利用了赋值计算为指定值的事实:

var Init; (Init = function Init () {
alert ("wee");
})()

关于JavaScript自执行函数 "is not a function",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6090912/

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