0
Object.keysを使用して、オブジェクトの配列にキー割り当てを行います。しかし、それは反復ごとに一意のオブジェクトを返したので、私の4つのアイテムは2になりました。それを回避する方法はありますか?オブジェクト配列のObject.keysを使用
var cityIdmap = {};
var bpidmap = {
'7': {
cityid: 2,
bpid: 7,
name: 'Puduraya',
time: '+00:00',
sbpid: 50169
},
'11': {
cityid: 1,
bpid: 11,
name: 'Golden Mile Tower',
time: '+00:00',
sbpid: 50172
},
'12': {
cityid: 2,
bpid: 12,
name: 'Berjaya Times Square',
time: '+00:00',
sbpid: 50171
},
'66': {
cityid: 1,
bpid: 66,
name: 'Textile Centre',
time: '+00:00',
sbpid: 50170
}
};
Object.keys(bpidmap).forEach(function(item) {
var bp = bpidmap[item];
cityIdmap[bp.cityid] = {};
cityIdmap[bp.cityid][bp.bpid] = bp;
});
document.write(JSON.stringify(cityIdmap));
滑らかなソリューションを使用することができます!ここでtypeofを使用する必要がありますか? –
@ハリスZなぜか?あなたを混乱させているのは何ですか? –
@HarisZ:あなたは 'if(!(cityMapのbp.cityid))'や 'if(!cityMap [bp.cityid])'やそれ以外のものを使うこともできます。 – Bergi