为以特定字符串开头的所有变量赋值
Assign a value to all variables that start with certain string
[警告!坏主意]
我知道这可能是一个奇怪的问题,但我正在编写一个检测调查的脚本(在 JavaScript 中)。因此,这种特定类型的调查声明了一堆以特定字符串开头的变量,然后在名称后附加了一个随机数,如下所示:
variableName_465;
variableName_212;
variableName_123;
那么假设它们都设置为 false,我该如何将它们都设置为 true?
我有一个在全局范围内记录变量的循环。
for ( var i in window )
{
console.log(i, typeof window[i], window[i]);
}
但是 for 循环内部的 i = true;
并没有改变实际变量,我想我实际上是在创建一个新变量。
我真的不知道这是否可行。非常感谢你的帮助,谢谢。
您要修改 window[i]
(变量 i
的值),而不是 i
(变量名称)。所以你可以这样做:
for (var i in window) {
if (i.indexOf('variableName') == 0){
window[i] = true;
}
}
[警告!坏主意]
我知道这可能是一个奇怪的问题,但我正在编写一个检测调查的脚本(在 JavaScript 中)。因此,这种特定类型的调查声明了一堆以特定字符串开头的变量,然后在名称后附加了一个随机数,如下所示:
variableName_465;
variableName_212;
variableName_123;
那么假设它们都设置为 false,我该如何将它们都设置为 true? 我有一个在全局范围内记录变量的循环。
for ( var i in window )
{
console.log(i, typeof window[i], window[i]);
}
但是 for 循环内部的 i = true;
并没有改变实际变量,我想我实际上是在创建一个新变量。
我真的不知道这是否可行。非常感谢你的帮助,谢谢。
您要修改 window[i]
(变量 i
的值),而不是 i
(变量名称)。所以你可以这样做:
for (var i in window) {
if (i.indexOf('variableName') == 0){
window[i] = true;
}
}