假设我需要根据计数器声明一个javascript变量我该怎么办?
var pageNumber = 1;
var "text"+pageNumber;
Run Code Online (Sandbox Code Playgroud)
上面的代码不起作用?
能否请你帮忙?谢谢!
bun*_*ito 73
在JavaScript中(据我所知),有两种方法可以创建动态变量:
EVAL:
var pageNumber = 1;
eval("var text" + pageNumber + "=123;");
alert(text1);
Run Code Online (Sandbox Code Playgroud)
窗口对象:
var pageNumber = 1;
window["text" + pageNumber] = 123;
alert(window["text" + pageNumber]);
Run Code Online (Sandbox Code Playgroud)
你怎么会访问所说的变量,因为你不知道它的名字?:)你可能最好在对象上设置参数,例如:
var obj = {};
obj['text' + pageNumber] = 1;
Run Code Online (Sandbox Code Playgroud)
如果你真的想这样做:
eval('var text' + pageNumber + '=1');
Run Code Online (Sandbox Code Playgroud)
我不认为你可以唱JavaScript.I认为你可以使用数组而不是这个,
var textArray=new Array();
textArray[pageNumber]="something";
Run Code Online (Sandbox Code Playgroud)
假设该变量位于全局范围内,您可以执行以下操作:
var x = 1;
var x1 = "test"
console.log(window["x" + x]); //prints "test"
Run Code Online (Sandbox Code Playgroud)
然而,更好的问题可能是为什么你想要这样的行为。
| 归档时间: |
|
| 查看次数: |
71199 次 |
| 最近记录: |