Maison  >  Article  >  interface Web  >  Introduction à l'utilisation de Map dans ES6 (exemple de code)

Introduction à l'utilisation de Map dans ES6 (exemple de code)

不言
不言avant
2018-11-14 16:16:594299parcourir

Cet article vous présente une introduction à l'utilisation de Map dans ES6 (exemples de code). Il a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer.

Vue d'ensemble

Map est également une nouvelle structure de données, qui est en fait souvent utilisée en js. Par exemple, dans le châtaignier ci-dessous, nous utilisons souvent un objet de cette manière. c'est un objet, cela ressemble plus à une Map, mais par rapport à une vraie Map, celle-ci est quand même un peu faible,

let color={
    "red":"#FF0000",
    "green":"#00FF00",
    "blue":"#0000FFF"
}
color['red']

Initialisation

new Map([iterable])

Initialisation d'une Map a un paramètre facultatif, qui doit être Il s'agit d'un objet itérable. Les objets itérables incluent String, Array, Array-Like obejct (Arguments, NodeList), Typed Array, Set, Map et les objets itérables définis par l'utilisateur.

Array

new Map([[1,2],[3,4]]) // Map(2) {1 => 2, 3 => 4}

Ajouter

Par rapport aux objets comme Map, les clés de Map peuvent avoir n'importe quelle valeur, même NaN

var myMap = new Map();
var keyObj = {},
    keyFunc = function () {},
    keyString = "a string";
// 添加键
myMap.set(keyString, "和键'a string'关联的值");
myMap.set(keyObj, "和键keyObj关联的值");
myMap.set(keyFunc, "和键keyFunc关联的值");

Get la taille de Map

myMap.size    // 3

Obtenez si

myMap.get(keyString)   // "和键'a string'关联的值"
myMap.get(keyObj)     // "和键keyObj关联的值"
myMap.get(keyFunc)      // "和键keyFunc关联的值"

contient

myMap.has(keyString)  // true
myMap.has('1')  // false

Supprimez

myMap.delete(keyString)  // true
myMap.delete('')  // false

Traverse

myMap.forEach(m=>{console.log(m)})
// 和键'a string'关联的值
//  和键keyObj关联的值
//  和键keyFunc关联的值

Obtenir l'itérateur

let entries=myMap.entries()
entries.next().value // 和键'a string'关联的值
entries.next().value//  和键keyObj关联的值
entries.next().value//   和键keyFunc关联的值

Obtenir l'itérateur de clé

let keys=myMap.keys()
keys.next().value //  "a string"
keys.next().value//  function () {}
keys.next().value//   {}

Obtenir l'itérateur de valeur

let values=myMap.values()
values.next().value // 和键'a string'关联的值
values.next().value//  和键keyObj关联的值
values.next().value//   和键keyFunc关联的值

Effacer

mySet.clear()


Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer