如果键是数字,则字典键会自动排序

时间:2016-09-12 14:03:48

标签: javascript sorting dictionary

var a = ['a1', 'b2', 'd4', 'c3'];
var dict = {};

for(var i=0; i<a.length; ++i) {
dict[(a[i].match(/\d+/)[0])] = a[i];
}
console.log(dict);

for(var i=0; i<a.length; ++i) {
dict[a[i]] = a[i].match(/\d+/)[0];
}
console.log(dict);

在第一种情况下,键是数字,我们有输出字典键排序。

但在第二种情况下,键不是数字,我们按照添加的顺序输出字典键!

这是一些隐藏的功能,我的意思是它每次都可靠吗?

1 个答案:

答案 0 :(得分:0)

在您的示例中,aarray,而dict只是object

保留array项目的顺序。

没有关于object属性顺序的说明,但顺序通常是定义它们的顺序...如果结构保持不变。因此无法保证订单。