gpt4 book ai didi

javascript - 变量中的函数名

转载 作者:行者123 更新时间:2023-12-01 02:20:49 24 4
gpt4 key购买 nike

我在尝试调用名称存储在变量中的函数时遇到问题。我在 stackOverflow 上发现了一些有关我的问题的问题,但我似乎仍然无法解决我的问题。据我了解,使用

window[functionName]();

应该调用我想要的函数。我创建了一个jsfiddle我希望能澄清我的问题。问题是,我的函数没有被调用,而是出现错误:

window[functionName] is not a function

我相信我遗漏了一些小东西,但在花了很长时间试图找出问题所在后,我决定也在这里尝试一下。

最佳答案

因为您的函数被添加到 onload 处理程序中,因此它们是全局范围内不可用的方法的本地函数。

在左侧面板的第二个下拉列表中选择 no-wrap header/body,然后将 jQuery 处理程序添加到 dom 就绪处理程序中。

function one() {
alert('one called');
}

function two() {
alert('two called');
}

function three() {
alert('three called');
}

jQuery(function () {
jQuery("button").bind("click", function () {
var funcName = "one";
window[funcName]();
//alert('here');
});
})

演示:Fiddle

jsfiddle 默认将脚本添加到 window.onload = function(){} 处理程序中,因此您在那里声明的任何函数/变量都将位于该函数范围内,并且在全局范围(窗口)

关于javascript - 变量中的函数名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20639135/

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