簡體   English   中英

帶有自定義變量索引的 Javascript 數組

[英]Javascript array with custom variable indexing

是否可以使用變量設置數組的自定義索引。

例如:

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

上面的示例將數組索引設置為indexID而不是5 我曾嘗試使用= snd 引號,但沒有任何成功。

納克斯

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

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

還要注意temp是一個對象,而不是一個數組。 在 JavaScript 中,所有關聯數組(或字典)都表示為對象。

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

我想你想要的是:

var indexID = 5;
var temp = {};
temp[indexID] = "stuff"

使用您的代碼,您將創建一個對象。

相反,你可以做

var indexID = 5;
var temp = [];
temp[indexID] = [];

您正在將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,[]};

對於節點紅色項目,我必須在索引名稱中添加撇號

var Trend_1={};

Trend_1[**'x'**]=Date_TimeArray;
var index=7;  //YOUR CUSTOM INDEX
var newarray=[];

如果你需要數組索引是一個數組,你可以這樣做:

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

如果您只需要為自定義數組索引分配一個值,您可以這樣做:

newarray[index] = "ANY-THING-YOU-WANT"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM