JavaScript array with named index

By | April 4, 2014

JavaScript 其中一個 Magic 的地方就是 array 可以有 named index,即是

var arr = [];
arr['blue'] = 1;
arr['red'] = 2;

但當 JSON.stringify(arr) 時,只會出現 []。如果真的要 stringify,那麼就只能只用 map,即是:

var arr = {}; // 或直接 var arr = { blue:1, red: 2};
arr.blue = 1;
arr.red = 2;

用 map 都可以當成 array 用,

var keys = Object.keys(arr);

就可 iterate keys 了

keys.forEach(function(o, i){
console.log(o + ': ' + arr[o]);
});