gpt4 book ai didi

javascript - 如何将变量作为字符串注入(inject)?

转载 作者:行者123 更新时间:2023-11-30 10:34:10 25 4
gpt4 key购买 nike

<分区>

我正在循环中使用一个动态创建的函数。

for (var i = 0; i < 4; i++) {
window["functiontest" + i] = function () { alert(i); }
}

它可以工作,但不是我想要的工作方式。因为当我这样做时,这意味着当 functiontest0 运行时它会发出警报“3”,因为它实际上会在循环完成添加到 i 时警报 var i

我想要的是以某种方式“硬编码”当前的 i 所以它实际上会警告“0”而不是“3”。我的意思是这样的:

window["functiontest" + i] = function () {
// I need just the current state for `i` here and
// not just the variable `i` - so for exampe I need
// it as `i` literally put 0
}

有什么方法可以强制将结果写入“字符串”或其他内容吗?

感谢大家的帮助。抱歉,重复项在搜索时找不到任何内容。主要是因为我无法很好地解释它:-)

但我最终得到了这样的结果:

 for (var genfunc = 0; genfunc < 4; genfunc++) {

if (genfunc == 0) { //left
window["keyDown" + sys_curcontrols[genfunc]] = (function (unique) {
return function () { window["sys_keyLeft" + unique] = -1; }
})(nid);
}

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