Javascript Map vs Object —什么时候?
根据MDNDocs,
Map对象保存键值对,并记住键的原始插入顺序。任何值(对象值和原始值)都可以用作键或值。
这里要注意的重要一点是,对象也可以用作映射中的键。JavaScript对象不是这种情况。JS对象仅允许将基元用作键。
使它在某些情况下有用的另一个功能是可迭代的。并且可以按插入顺序进行迭代。因此,在需要维护键顺序并具有与之关联的值的情况下,可以使用映射。
示例
映射的用法示例-
const myMap = new Map();
const keyString = 'a string',
const keyObj = {},
const keyFunc = function() {};
//用各种键设置值
myMap.set(keyString, "String Val");
myMap.set(keyObj, 'Object val');
myMap.set(keyFunc, 'function val');
console.log(myMap.size);
console.log(myMap.get(keyString));输出结果
这将给出输出-
3 String Val
热门推荐
10 儿子立冬祝福语简短独特
11 对当兵的祝福语简短
12 侄儿高考试祝福语简短
13 伴郎红包祝福语朋友简短
14 媳妇生日简短祝福语朋友
15 公司年会祝福语简短最好
16 元旦感恩祝福语简短大全
17 红包祝福语简短10字
18 周六早晨祝福语简短