2015-10-01 7 views

Odpowiedz

27

najbliżej można dostać się:

let object = new Map([ 
    ['foo', 'bar'], 
    ['1', 42] 
]); 

Ważne rzeczy zauważyć:

  1. Właściwości obiektu są identyfikowane za pomocą sznurków, natomiast klawisze mapa może być dowolna wartość, więc upewnij się, że wszystkie klucze są ciągi w tablicy wejściowej.
  2. Powtórzenie obiektu Mapa daje pozycje według zamówienia reklamowego. To nie jest gwarantowane dla obiektów, więc zachowanie może być inne.
+0

Z pewnością '['1', 42]' powinno brzmieć '[1, 42]' lub czy zrobiłeś z niego ciąg znaków, ponieważ tak właśnie byłoby, gdyby był to obiekt? – CodingIntrigue

+3

@RGraham - dokładnie tak, jak zauważyłem w moim pierwszym punkcie. – Amit

+0

Punkt 1 nie ma sensu. Jeśli klucze mogą być dowolną wartością, to dlaczego mam się upewnić, że są one ciągami? – zeroflagL

0

W nowoczesnych przeglądarek może być tak proste, jak: [? Czy JavaScript mieć mapę dosłownego zapisu]

new Map(Object.entries(object)) 
Powiązane problemy