2017-09-08 46 views
0

我試圖弄清楚如何添加到地圖中,而不使用集。在不使用集的情況下向地圖添加多個鍵/值

說我有一個顏色列表。如果我使用了一個對象,它會如此簡單:

var colors = { 
    red: 'hsl(0,50,50)', 
    green: 'hsl(150,50,50)', 
    blue: hsl(210,50,50) 
} 

這是幹什麼用地圖做的?

我知道添加到地圖是非常簡單:

colors.set('red','hsl(0,50,50)') 

...但是,這將意味着我必須這樣做,所有我有我的收藏中的顏色。有沒有更簡單的方法來做到這一點?

回答

0

您可以使用數組數組初始化Map。第二個維度必須是[key, value]

const colors = new Map([ 
    ['red', 'hsl(0,50,50)'], 
    ['green', 'hsl(150,50,50)'], 
    ['blue', 'hsl(210,50,50)'], 
]) 
0

對象本身不支持.map(),雖然你可以結合Object.keys()使用它。

您可以使用該dot notationbracket notationObject.keys(colors).map(function(key, index) {})內:

var colors = { 
 
    red: 'hsl(0,50,50)', 
 
    green: 'hsl(150,50,50)', 
 
    blue: 'hsl(210, 50, 50)' 
 
} 
 

 
Object.keys(colors).map(function(key, index) { 
 
    colors["another"] = "value"; 
 
    colors.another2 = "value2"; 
 
}); 
 

 
console.log(colors);

希望這有助於! :)

+0

我不知道這是否回答我的問題...我說的是「Map」對象,而不是'Array.prototype.map()' – Modermo

相關問題