Map()的营救;使对象属性有顺序
对象属性顺序
一个对象是一个
Object
类型的实例。它是由一些未排序的元素组成的集合,其中包含了原始变量,对象,和函数。一个对象的属性所对应的函数被称为方法。ECMAScript
实际看一下
1 | var myObject = { |
因为技术实现,每个浏览器在排序时都有自己的规则,顺序是不确定的。
怎么解决呢?
Map
使用ES6的新特性Map。Map 对象以插入的顺序遍历元素。for...of
循环为每一次循环返回一个[key, value]数组。
1 | var myObject = new Map(); |
攻克老浏览器
Mozilla 建议:
所以,如果过你想在跨浏览器环境中模拟一个有序的关联数组,你要么使用两个分开的数组(一个保存key,另一个保存value),要么构建一个单属性对象(single-property objects)的数组。
1 | // 使用分开的数组 |
原文作者: anhr
版权声明: 转载请注明出处(必须保留原文作者署名原文链接)