如何初始化数组变量
How to initialize array variable
我想在javascript中动态初始化一个变量数组。我不断收到意外的令牌非法令牌错误。
在我当前的脚本中,serviceLimit = 10;
但它可以随时更改。
尝试 #1
var jqSvcPhrase = {};
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase[+ i +] = ''; // produces - Uncaught SyntaxError: Unexpected token ]
}
尝试#2
var jqSvcPhrase = {};
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase\[+ i +\] = ''; // produces - Uncaught SyntaxError: Unexpected token ILLEGAL
}
尝试 #3
var jqSvcPhrase = {};
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase\[+ i +\] = ''; // produces - Uncaught SyntaxError: Unexpected token ILLEGAL
}
呃...所有 +
是怎么回事?
var jqSvcPhrase = {};
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase[i] = '';
}
i
是整数类型,所以不需要拼接。试试这个:
var jqSvcPhrase = {};
for (i = 1; i <= serviceLimit; i++) {
jqSvcPhrase[i] = '';
}
首先你要声明一个对象而不是数组。
它应该是 var jqSvcPhrase = [];
而不是。
此外,不需要 +
。必须是 jqSvcPhrase[i]
为什么要用大括号?对数组使用方括号。
var jqSvcPhrase = [];
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase[i] = '';
}
数组语法(Manual):
[element0, element1, ..., elementN]
new Array(element0, element1[, ...[, elementN]])
new Array(arrayLength)
这应该是:
var jqSvcPhrase = new Array(serviceLimit);
初始化值是有意义的:
for (x in jqSvcPhrase) { x = ''; }
我想在javascript中动态初始化一个变量数组。我不断收到意外的令牌非法令牌错误。
在我当前的脚本中,serviceLimit = 10;
但它可以随时更改。
尝试 #1
var jqSvcPhrase = {};
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase[+ i +] = ''; // produces - Uncaught SyntaxError: Unexpected token ]
}
尝试#2
var jqSvcPhrase = {};
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase\[+ i +\] = ''; // produces - Uncaught SyntaxError: Unexpected token ILLEGAL
}
尝试 #3
var jqSvcPhrase = {};
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase\[+ i +\] = ''; // produces - Uncaught SyntaxError: Unexpected token ILLEGAL
}
呃...所有 +
是怎么回事?
var jqSvcPhrase = {};
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase[i] = '';
}
i
是整数类型,所以不需要拼接。试试这个:
var jqSvcPhrase = {};
for (i = 1; i <= serviceLimit; i++) {
jqSvcPhrase[i] = '';
}
首先你要声明一个对象而不是数组。
它应该是 var jqSvcPhrase = [];
而不是。
此外,不需要 +
。必须是 jqSvcPhrase[i]
为什么要用大括号?对数组使用方括号。
var jqSvcPhrase = [];
for(i=1; i<=serviceLimit; i++) {
jqSvcPhrase[i] = '';
}
数组语法(Manual):
[element0, element1, ..., elementN] new Array(element0, element1[, ...[, elementN]]) new Array(arrayLength)
这应该是:
var jqSvcPhrase = new Array(serviceLimit);
初始化值是有意义的:
for (x in jqSvcPhrase) { x = ''; }