簡體   English   中英

將數據保存為對象還是數組?

[英]saving data as object or array?

我有一些數據

4 0.128 0.039
5 0.111 0.037
6 0.095 0.036

我需要通過已知的第一個值來獲取第二個和第三個值。 如果我的值為4我想取回兩個變量: a = 0.111b = 0.037

為了簡單地訪問數據,存儲上面顯示的數據的最佳變量類型是什么? 對象還是多維數組?

為了便於訪問,我將使用包含數組的對象:

{
    '4': [ 0.128, 0.039 ],
    '5': [ 0.111, 0.037 ],
    ... 
}

在數組上使用對象的第二個原因是易於迭代。 想象一下:

var myData = [];
myData[4]  = [ 0.128, 0.039 ];
myData[10] = [ 42, 23 ];

for (var i = 0; i < myData.length; i++)
{
    console.log(myData[i]);
}

會給你

null
null
null
null
[ 0.128, 0.039 ]
null
null
null
null
null
[ 42, 23 ]

...這可能不是您想要的;)

您想要做的就是將其另存為json對象或數組,如下所示:

創建:

var obj = { "4":[0.128, 0.039], "5":[0.111, 0.037],"6":[0.095, 0.036] }

檢索:

obj.4 -> [0.128, 0.039] OR obj['4'] OR obj[0]
obj.5[0] -> 0.111 OR obj['5'][0] OR obj[1][0]
obj.5[1] -> 0.037 OR obj['5'][1] OR obj[1][1]

在檢索到的obj中循環:

for (var key in obj) {
    alert(obj[key]); 
}

如果元素的順序很重要,我個人使用數組,否則我使用對象(對象不適合保留順序)。

  • 數組帶有諸如push(),pop(),sort(),splice()之類的方法。
  • 如果您具有唯一鍵,則對象是好的。

最后,歸結為您要完成的工作的最佳工具。

暫無
暫無

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

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