使用jQuery将JS对象转换为数组我的应用程序创建了一个JavaScript对象,如下所示:myObj= {1:[Array-Data], 2:[Array-Data]}但我需要这个对象作为数组。array[1]:[Array-Data]array[2]:[Array-Data]因此,我试图通过迭代$.each通过对象并将元素添加到数组中:x=[]$.each(myObj, function(i,n) {
x.push(n);});是否有更好的方法将对象转换为数组或函数?
3 回答
幕布斯6054654
TA贡献1876条经验 获得超7个赞
var myObj = { 1: [1, 2, 3], 2: [4, 5, 6]};var array = $.map(myObj, function(value, index) { return [value];});console.log(array);
[[1, 2, 3], [4, 5, 6]]
波斯汪
TA贡献1811条经验 获得超4个赞
var obj = {1: 11, 2: 22};var arr = Object.keys(obj).map(function (key) { return obj[key]; });
[11, 22]
Object.keys(obj).map(key => obj[key])
Object.values
var arr = Object.values(obj);
var arr = _.values(obj)
蝴蝶刀刀
TA贡献1801条经验 获得超8个赞
for in
myObj= {1:[Array-Data], 2:[Array-Data]}var arr =[];for( var i in myObj ) { if (myObj.hasOwnProperty(i)){ arr.push(myObj[i]); }}
function isNumber(n) { return !isNaN(parseFloat(n)) && isFinite(n);}myObj= {1:[1,2], 2:[3,4]}var arr =[];for( var i in myObj ) { if (myObj.hasOwnProperty(i)){ if (isNumber(i)){ arr[i] = myObj[i]; }else{ arr.push(myObj[i]); } }}
添加回答
举报
0/150
提交
取消