値を新しい配列にマップしようとしています。問題は、マッピングしているプロパティが数値または配列のいずれかになる可能性があることです。
私の結果は連想配列であるため、配列に関しては問題があります。私の目標は、[[1,2,3], [1,2,3]]
(下記参照) をに変換すること[1,2,3,1,2,3]
です。言い換えると; 1次元配列にするだけです。
map() 内で foreach ループを試しましたが、成功しませんでした。何か案は?
var list = [{ foo: 1, bar: [1,2,3] }, { foo: 2, bar: [1,2,3] }];
var retArr = list.map(function (v) {
return v.bar;
});
console.log(retArr); // [[1,2,3], [1,2,3]]
var list = [{ foo: 1, bar: [1,2,3] }, { foo: 2, bar: [1,2,3] }];
var retArr = list.map(function (v) {
if($.isArray(v.bar)){
$.each(v.bar, function(i, v){
return v;
});
} else {
return v.bar;
}
});
console.log(retArr); // [undefined, undefined]