前端測試題:關於Map結構的介紹,下面說法錯誤的是?

  • 2020 年 3 月 12 日
  • 筆記

考核內容:Map結構的特點

題發散度: ★★

試題難度: ★

解題思路:

ES6 提供了 Map 數據結構。它類似於對象,也是鍵值對的集合,但是「鍵」的範圍不限於字元串,各種類型的值(包括對象)都可以當作鍵。也就是說,Object 結構提供了「字元串—值」的對應,Map 結構提供了「值—值」的對應,是一種更完善的 Hash 結構實現。如果你需要「鍵值對」的數據結構,Map 比 Object 更合適。

const m = new Map();const o = {p: 'Hello World'};  m.set(o, 'content')m.get(o) // "content"  m.has(o) // truem.delete(o) // truem.has(o) // false

上面程式碼使用 Map 結構的set方法,將對象o當作m的一個鍵,然後又使用get方法讀取這個鍵,接著使用delete方法刪除了這個鍵。

展示了如何向 Map 添加成員。作為構造函數,Map 也可以接受一個數組作為參數。該數組的成員是一個個表示鍵值對的數組

參考程式碼:

const map = new Map([  ['name', 'shuke'],  ['title', 'Author']]);  map.size // 2map.has('name') // truemap.get('name') // "shuke"map.has('title') // truemap.get('title') // "Author"

答案

C、Map結構的鍵名必須是引用類型