2016-09-22 73 views
-1

我正在嘗試像這樣動態地創建關聯數組。 如何構建它?有以下預期產出?JavaScript數組作爲關聯數組中的值

「快樂」:[1,2,3,4,5], 「憤怒」:[6,7,8,9,10]

$(document).ready(function() { 
var videos = []; 

$('.header-video__media').each(function(i, elem) { 
    var mediaElement = $(elem); 
    var mood = mediaElement.attr('data-mood'); 
    headerVideo = new HeaderVideo({ 
    index:i, 
    element: '.header-video', 
    media: '.header-video__media', 
    playTrigger: '.header-video__play-trigger', 
    closeTrigger: '.header-video__close-trigger', 
    nextTrigger: '.header-video__next-trigger' 
    }); 
    videos.mood = mood; 
    videos.push (headerVideo); 
}); 
+2

這是什麼問題? – Rayon

+0

這個問題或答案? – ricky

+0

你能告訴我們你的源數據嗎? – georg

回答

0

在JavaScript的世界關聯數組是用文字對象表示:

// declaration of a new literal object 
var videos = {}; 

// test if the key is already setted or not 
if(!videos.hasOwnProperty(mood)){ 
    // if not, initiate a new array 
    videos[mood] = [headerVideo]; 
}else{ 
    // if yes, add add the value to the existing array 
    videos[mood].push(headerVideo); 
}