gpt4 book ai didi

javascript - 具有作用域问题的匿名函数调用

转载 作者:行者123 更新时间:2023-11-30 13:01:23 24 4
gpt4 key购买 nike

<分区>

我确定以前有人问过这个问题,但我不知道要搜索什么。

所以我希望使用与单击的项目相对应的字符串调用函数,但我只想将任何新项目添加到字符串数组中。

var menuList = ["overview", "help", "search"];
var functionCalls = [
function() { toggleMenu(menuList[0]); },
function() { toggleMenu(menuList[1]); },
function() { toggleMenu(menuList[2]); },
];

在循环中这样使用:$("something").click(functionCalls[i])

这是我想要做的(但显然行不通):

for (var i in menuList) {

// This does not work because the closure references 'i'
// which, at the end, is always the index of the last element
$("something").click(function() {
toggleMenu(menuList[i]);
});

// this works, but I have to define each closure
$("something").click(functionCalls[i]);
}

我如何创建一个接受基于变量的值但不保留对变量的引用的匿名函数?

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