-1
我的數據看起來是這樣的:如何通過對象的數組循環,這是另一對象的數組中 - 的JavaScript
var songs = [
{Object1: [{Obj1: songId}]},
{Object2: [{Obj1: songId}]}
];
什麼是搶到最好的方式,所有的songId從整個歌曲的陣列?
我的數據看起來是這樣的:如何通過對象的數組循環,這是另一對象的數組中 - 的JavaScript
var songs = [
{Object1: [{Obj1: songId}]},
{Object2: [{Obj1: songId}]}
];
什麼是搶到最好的方式,所有的songId從整個歌曲的陣列?
var songsIdCollection = [];
songs.forEach(function(wrappedSongData) {
//{ Object1: [ {Obj1: songId} ] }
wrappedSongData.forEach(function(songIdMaps) {
//[ {Obj1: songId} ]
songIdMaps.forEach(function(songIdMap) {
//{Obj1: songId}
songsIdCollection.push(songIdMap.Obj1);
});
});
});
一些迭代會做。用最少的代碼
var songs = [
{ Object1: [{ Obj1: 8 }] },
{ Object2: [{ Obj1: 99 }] }
],
songId = [];
songs.forEach(function (o) {
Object.keys(o).forEach(function (k) {
o[k].forEach(function (a) {
songId.push(a.Obj1);
});
});
});
document.write('<pre>' + JSON.stringify(songId, 0, 4) + '</pre>');
哈克和緩慢的方式:'JSON.stringify(聽歌).match(/ songIdRegex /)' - 會給你的ID陣列 – webduvet
您也可以嵌套'forEach'或'map'調用你想要通過 –
對你自己的函數進行遍歷的數組,或者導入下劃線庫並使用它們 –