Gar*_*ary 5 javascript variables scope dynamic local-variables
我如何引用动态局部变量?使用全局变量很容易实现:
myPet = "dog";
console.log(window["myPet"]);
Run Code Online (Sandbox Code Playgroud)
我如何在本地范围内做同样的事情?
特别是我正在尝试做的事情:
myArray = [100,500,200,800];
a = 1; // Array index (operand 1)
b = 2; // Array index (operand 2)
Run Code Online (Sandbox Code Playgroud)
根据具体情况,我想评估<b或b <a
以下与全局变量完美配合. 但是,我希望a和b是本地的.
compare1 = "b"; compare2 = "a";
for(a=0; a<myArray.length; a++){
b = a+1;
while(b>=0 && myArray[window[compare1]] < myArray[[compare2]]){
/* Do something; */
b--;
}
}
Run Code Online (Sandbox Code Playgroud)
如果在上面我设置compare1=a那么我将不得不重新设置比较1,每次一个改变.相反,我希望真正[查看/点]的值一个.
使用对象而不是一组单独的变量。(我无法想象现实世界中您想要使用动态命名的变量,但它不属于一组逻辑相关的变量)。
var animals = { dog: "Rover", cat: "Flopsy", goldfish: "Killer" };
var which = 'dog';
alert(animals[which]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1121 次 |
| 最近记录: |