Javascript 当array.prototype.slice.call不起作用时,如何将具有属性列表的对象转换为数组?

Javascript 当array.prototype.slice.call不起作用时,如何将具有属性列表的对象转换为数组?,javascript,Javascript,这适用于以下列表: > Array.prototype.slice.call([1,2,3]) > [1, 2, 3] 如何从这类数据创建列表{1:“1”,2:“2”,3:“3”}?对于,除了用迭代对象之外,还有其他方法吗 Array.prototype.slice.call()在这里不起作用,它给出了[] 这来自data=Object{0:Object,1:Object,2:Object,total:'29'}然后我删除数据['total'],需要访问切片,弹出和数组的其他方法

这适用于以下列表:

> Array.prototype.slice.call([1,2,3])
> [1, 2, 3]
如何从这类数据创建列表
{1:“1”,2:“2”,3:“3”}
?对于,除了用
迭代对象之外,还有其他方法吗

Array.prototype.slice.call()
在这里不起作用,它给出了
[]

这来自
data=Object{0:Object,1:Object,2:Object,total:'29'}
然后我
删除数据['total']
,需要访问
切片
弹出
数组
的其他方法

var list = [];
for (item in obj) {
    list.push(obj[item]);
}

//use list.push(parseInt(obj[item])) for number array
如果你想让它变直,你也可以做下面的事情

Object.values(obj);

您可以使用键并映射值

var o={1:1,2:2,3:3},
a=对象、键(o)、映射(函数(k){
返回o[k];
});
控制台日志(a);

log(Array.prototype.slice.call({1:1',2:2',3:3',长度:5}))谢谢,但是除了使用for进行迭代之外,没有其他选项了?请参阅更新的选项。如果您想执行其他一些操作,迭代是最好的。但如果它只是您想要的对象的属性值,那么第二种方法是使用for迭代对象之外的其他方法吗?是的,我不是在争论!只是问我的推荐人;)谢谢你,尼娜,这看起来正是我想要的!这来自
data=Object{0:Object,1:Object,2:Object,total:'29'}
然后我
删除数据['total']
,需要访问
切片
弹出
数组
的其他方法,所以这应该help@NinaScholz,我正要发布一个关于这个的答案;)您可能还想写一点关于
0
索引的内容(由于索引
0
中没有值,导致
未定义的原因)…+1您可以添加它,如果您愿意的话