Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将对象数组转换为单个数组_Javascript - Fatal编程技术网

Javascript 如何将对象数组转换为单个数组

Javascript 如何将对象数组转换为单个数组,javascript,Javascript,我有这个obj阵列 0: "aab9d17c0f0493808331c2da42050e41" 1: "beb9d17c0f0493808331c2da42050e62" 2: "a2b9953c0f0493808331c2da42050e51" 3: "2ab9d17c0f0493808331c2da42050e4a" 在单个阵列上连接所有这些阵列的最佳方法是什么 预期结果 ["aab9d17c0f0493808331c2da42050e41","beb9d17c0f0493808331c2

我有这个obj阵列

0: "aab9d17c0f0493808331c2da42050e41"
1: "beb9d17c0f0493808331c2da42050e62"
2: "a2b9953c0f0493808331c2da42050e51"
3: "2ab9d17c0f0493808331c2da42050e4a"
在单个阵列上连接所有这些阵列的最佳方法是什么

预期结果

["aab9d17c0f0493808331c2da42050e41","beb9d17c0f0493808331c2da42050e62","a2b9953c0f0493808331c2da42050e51","2ab9d17c0f0493808331c2da42050e4a"]
试试这个:

让obj=
{0:“aab9d17c0f0493808331c2da42050e41”,
1:“beb9d17c0f0493808331c2da42050e62”,
2:“a2b9953c0f0493808331c2da42050e51”,
3:“2ab9d17c0f0493808331c2da42050e4a”}

console.log(Object.values(obj))
如果要确保保留顺序,可以为对象指定一个
length
属性并使用
Array.from()

让obj={
0:“aab9d17c0f0493808331c2da42050e41”,
1:“beb9d17c0f0493808331c2da42050e62”,
2:“a2b9953c0f0493808331c2da42050e51”,
3:“2ab9d17c0f0493808331c2da42050e4a”
}
obj.length=对象值(obj.length)
设arr=Array.from(obj)

console.log(arr)
如果数据顺序正确,则可以创建自定义映射排序映射函数

const分拣机={
排序为:(a,b)=>a.localeCompare(b),
SortByAsString:(a,b)=>a.key.toString().localeCompare(b.key.toString()),
sortByKeyAsInteger:(a,b)=>a.key-b.key,
sortByKeyAsIntegerFromString:(a,b)=>parseInt(a.key,10)-parseInt(b.key,10),
sortByValueAsString:(a,b)=>a.value.toString().localeCompare(b.value.toString()),
sortByValueAsInteger:(a,b)=>a.value-b.value
};
功能toOrderedArray(obj,sorterFn){
返回Object.keys(obj)
.map(key=>({key:key,value:obj[key]}))
.sort(sorterFn | | sorter.sortbykeyastring)
.map(item=>item.value);
}
让数据={
0:“aab9d17c0f0493808331c2da42050e41”,
1:“beb9d17c0f0493808331c2da42050e62”,
2:“a2b9953c0f0493808331c2da42050e51”,
3:“2ab9d17c0f0493808331c2da42050e4a”
};
日志(toOrderedArray(data,Sorters.sortByKeyAsInteger))
。作为控制台包装器{
排名:0;
最大高度:100%!重要;

}
第一个值来自何处?请提供一个名为“parts”的obj中的值。注意,他的值将仅按插入顺序插入。在这里保留顺序的含义是什么?@rv7我的意思是,生成的数组将按对象键的顺序排列。我想建议使用
数组。也可以从
中选择,但忘记了如何创建一个对象不可编辑。非常优雅的回答,酷!顺便问一下,您是否有关于添加
length
属性的参考链接?