2.6JavaScript引用类型之映射(Map)

1.映射声明

映射的键可以是任何 JavaScript 数据类型。

映射的值可以是任何 JavaScript 数据类型。

映射的键值对是有序的。

//创建一个空映射
const m = new Map();
//创建一个映射并初始化
//可迭代对象中的元素必须是键值对,键值对会被按照迭代顺序插入到新的映射实例中,映射实例会记住键值对的迭代顺序,因此这也是映射实例可以被迭代的原因。
const m = new Map(可迭代对象);

//示例一(此语法错误)
const m = new Map([1, 2, 3]);
console.log(m);  // Uncaught TypeError: iterable for Map should have array-like objects

//示例二
const m = new Map([
  ["key1", "value1"],
  ["key2", "value2"],
  ["key3", "value3"],
]);
console.log(m);  // Map(3) { key1 → "value1", key2 → "value2", key3 → "value3" }

//示例三
const m = new Map([[]]);
console.log(m);  // Map { undefined → undefined }

2.访问映射

//查看是否存在指定键值对,返回布尔值
m.has("key");

//查看指定键对应的值
m.get("key");

//添加或更改指定键值对
m.set("key1", "value1")
 .set("key2", "value2");

//删除指定键值对
m.delete("key");

//清空所有键值对
m.clear;

3.映射长度

m.size

原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/javascript/javascriptlang/21446.html

(0)
huoxiaoqiang的头像huoxiaoqiang
上一篇 2020年9月5日 23:17
下一篇 2020年9月7日 17:58

相关推荐

  • 2.3JavaScript原始类型之符号(Symbol)

    一个符号实例用于表示一个唯一的标识符。 1.创建符号实例 注意:符号实例不支持字面量创建方式。 注意:符号实例不支持 new Symbol() 创建方式。 Symbol() 函数可选地接受一个字符串实参,字符串实参仅仅作为对符号实例的描述,将来可以通过这个字符串实参来调试代码,不影响任何事情。 Symbol() 函数的…

  • 2.11JavaScript语言的异步函数

    1.async 异步函数的定义:只需要首先在普通函数前添加一个 async 关键字,然后在函数体内至少包含一个 await 关键字即可。普通函数支持函数声明、函数表达式、箭头函数、立即调用的函数表达式和实例方法。 异步函数的返回值:总是 Promise 对象。 2.await 表达式 await 表达式 的返回值 Th…

  • 1.5JavaScript语言的变量(Variable)

    1.变量声明 注意:在同一个作用域,相同名称的变量不可以重复声明,否则会报错。 变量在赋值后可以通过重新赋值改变其值。 注意:新的值的类型不一定与老的值的类型相同。 2.变量声明提升(Hoisting) 变量声明不支持提升。 3.变量作用域 变量的作用域是块作用域,即外围离变量最近的代码块。全局变量的作用域是定义它们的…

发表回复

登录后才能评论