Javascript 如何初始化数组变量

Javascript 如何初始化数组变量,javascript,arrays,for-loop,Javascript,Arrays,For Loop,我想在javascript中动态初始化变量数组。我不断收到意外的令牌非法令牌错误 在我当前的脚本中,serviceLimit=10但它可以随时更改 尝试#1 var-jqsvcphase={}; 对于(i=1;iUhh…所有的+是怎么回事 var jqSvcPhrase = {}; for(i=1; i<=serviceLimit; i++) { jqSvcPhrase[i] = ''; } var-jqsvcphase={}; for(i=1;ii是整数类型,因此不需要串联。请尝试

我想在javascript中动态初始化变量数组。我不断收到意外的令牌非法令牌错误

在我当前的脚本中,
serviceLimit=10但它可以随时更改

尝试#1

var-jqsvcphase={};

对于(i=1;iUhh…所有的
+
是怎么回事

var jqSvcPhrase = {};
for(i=1; i<=serviceLimit; i++) {
  jqSvcPhrase[i] = '';
}
var-jqsvcphase={};

for(i=1;i
i
是整数类型,因此不需要串联。请尝试以下操作:

var jqSvcPhrase = {};
for (i = 1; i <= serviceLimit; i++) {
      jqSvcPhrase[i] = '';
}
var-jqsvcphase={};

对于(i=1;i首先,您声明的是一个对象,而不是一个数组。 它应该是
var jqsvcphase=[];

此外,不需要
+
。它必须是
jqsvcphase[i]

为什么使用花括号?使用方括号表示数组

var jqSvcPhrase = [];
for(i=1; i<=serviceLimit; i++) {
      jqSvcPhrase[i] = '';
}
var jqsvcphase=[];
对于(i=1;i数组语法():

这应该是:

var jqSvcPhrase = new Array(serviceLimit);
初始化值是有意义的:

for (x in jqSvcPhrase) { x = ''; }

我不是整数,你不是在jQuery中尝试这样做。你是在Javascript中尝试这样做的…只是简单地复制和粘贴以前的代码而已。@H.Ferrence这是否意味着代码在某个地方被评估了?我为你的代码感到抱歉d:没有使用评估,但感谢你的同情和关注@aduch:)对象仍然可以通过索引访问。“我想动态初始化变量数组[…]”-当你有对象时,你将无法使用数组函数。如果可能的话,最好在这里小心点
var jqSvcPhrase = [];
for(i=1; i<=serviceLimit; i++) {
      jqSvcPhrase[i] = '';
}
[element0, element1, ..., elementN] 
new Array(element0, element1[, ...[, elementN]]) 
new Array(arrayLength)
var jqSvcPhrase = new Array(serviceLimit);
for (x in jqSvcPhrase) { x = ''; }