9

是否可以使用变量设置数组的自定义索引。

例如:

var indexID = 5;
var temp = {
    indexID: new Array()
};

上面的示例将数组索引设置为indexIDand not 5。我曾尝试使用=snd 引号,但没有任何成功。

纳克斯

4

6 回答 6

19

是的,只需使用方括号表示法:

var temp = {};
temp[indexID] = [];

还要注意它temp是一个对象,而不是一个数组。在 JavaScript 中,所有关联数组(或字典)都表示为对象。

更多: http ://www.jibbering.com/faq/faq_notes/square_brackets.html#vId

于 2013-05-20T09:46:04.863 回答
5

我想你想要的是:

var indexID = 5;
var temp = {};
temp[indexID] = "stuff"
于 2013-05-20T09:47:08.757 回答
1

使用您的代码,您将创建一个对象。

相反,你可以做

var indexID = 5;
var temp = [];
temp[indexID] = [];
于 2013-05-20T09:46:53.977 回答
0

您正在ArrayObject. 数组知道(数字)索引,对象由键值对组成,其中键可以是任何字符串。

不是每个人都会同意,但你可以延长Object.prototype

Object.prototype.append = function(key,val){
  // confine to Object instances
  if (this.constructor !== Object && 
      !/object/i.test(this.constructor.prototype)) { return this; }
  this[key] = val;
  return this;
}

随后使用:

var temp = {}.append(indexID,[]};
于 2013-05-20T10:03:48.633 回答
0
var index=7;  //YOUR CUSTOM INDEX
var newarray=[];

如果你需要数组索引是一个数组,你可以这样做:

newarray[index] = {
                   'KEY':'VAL',
                   'KEY':'VAL',
                   'KEY':'VAL'
                    }

如果您只需要为自定义数组索引分配一个值,您可以这样做:

newarray[index] = "ANY-THING-YOU-WANT"
于 2019-12-13T09:45:22.493 回答
0

对于节点红色项目,我必须将撇号添加到索引名称中

var Trend_1={};

Trend_1[**'x'**]=Date_TimeArray;
于 2018-02-07T19:08:04.407 回答