JavaScript中Map的用途是什么?

映射

Map保留键值对,并记住键的实际插入顺序。映射仅允许存储唯一值。

语法

new Map([iterable])

情况1:缺少映射

在没有Map的情况下,由于javascript对象仅认可一个键对象,因此,如果我们提供多个键,则只会记住最后一个键。在下面的示例中,尽管提供了许多键(例如a和b),但只有b被记住并显示为输出。因此,为消除此缺陷,javascript中出现了“ Map”。

示例

<html>

<body>

<script>

   const x = {};

   const a = {};

   const b = {

      num:3

   }

   x[a] = "a";

   x[b] = "b";

   document.write(JSON.stringify(x));

</script>

</body>

</html>

输出结果

{"[object Object]":"b"}

情况2:映射的存在

从定义中我们知道,Map将记住键的实际插入顺序,它显示所有键和值对,例如'{}'作为键,而'a'具有值等,如输出所示。

示例

<html>

<body>

<script>

   const a = {};

   const b = {

      num:3

   }

   const map = new Map();

   map.set(a, "a").set(b, "b");

   for(let[key, value] of map.entries()){

   document.write(JSON.stringify(key, value)); // displaying key using Map

   document.write((key, value));               // displaying value using Map

}

</script>

</body>

</html>

输出结果

{}a {"num":3}b

以上是 JavaScript中Map的用途是什么? 的全部内容, 来源链接: utcz.com/z/361302.html

回到顶部