如何在对象数组上使用jQuery.map()来返回数组数组

Iga*_*lSt 45 javascript jquery

我想使用jQuery将对象数组转换为使用map的数组数组.

例如,如果我有这个:

var ObjArr = [{ a:1,b:2 },{ a:2,b:3 },{ a:3,b:4 }];
var ArrArr = $.map(ObjArr, function(n,i){
   return [ n.a, n.b ];
});
Run Code Online (Sandbox Code Playgroud)

结果将是:

ArrArr = [[1,2],[2,3],[3,4]]
Run Code Online (Sandbox Code Playgroud)

use*_*716 86

使用jQuery.map()(docs)map()(docs)方法,您需要双重包装返回值:

var ArrArr = $.map(ObjArr, function(n,i){
   return [[ n.a, n.b ]];
});
Run Code Online (Sandbox Code Playgroud)

...否则由于某种原因它会返回返回的数组.这样它就会连接外部数组,并将内容(内部数组)放在下一个索引处.

  • 有用!但是,你能告诉我jQuery有什么理由吗? (3认同)