![](/img/trans.png)
[英]How to convert a single key value pair object to array of objects with key value pair?
[英]Convert Array Objects key value pairs properties to a single key value pair and insert it into array again
我有一個js數組
var array = [ {no: 50, name: 'Ajinkya'}, {no: 89, name: 'Akshay'}, {no: 29, name: 'Rajesh'}, {no: 15, name: 'Vikram'}, ]
想要將其轉換為數組
var array = [50:'Ajinkya', 89:'Akshay', 29:Rajesh, 15: 'Vikram']
我已經試過了
array.forEach(
function(x){
temp[x['no']] = x['name'];
})
但是它沒有給出預期的結果
您可以將對象與所需的鍵/值對映射,並將它們分配給單個對象。
使用的方法:
Object.assign
用於從某些對象中創建單個對象, ...
用於將數組作為參數, Array#map
用於轉換對象, var array = [{ no: 50, name: 'Ajinkya' }, { no: 89, name: 'Akshay' }, { no: 29, name: 'Rajesh' }, { no: 15, name: 'Vikram' }], object = Object.assign(...array.map(({ no, name }) => ({ [no]: name }))); console.log(object);
如果您的意思是50:'Ajinkya'
是第50個元素是'Ajinkya'的數組,那么
[{ no: 50, name: 'Ajinkya' },
{ no: 89, name: 'Akshay' },
{ no: 29, name: 'Rajesh' },
{ no: 15, name: 'Vikram' }].reduce((acc, prev) => {
acc[prev.no] = prev.name;
return acc;
}, []);
const array1 = [ {no: 50, name: 'Ajinkya'}, {no: 89, name: 'Akshay'}, {no: 29, name: 'Rajesh'}, {no: 15, name: 'Vikram'} ];
const array2 = {} ;
for (const itm of array1) {
array2[itm.no] =itm.name;
}
我將數組簡化為一個對象,您可以在其中通過id查找項目。 在這里,數組實際上沒有任何意義。
const array = [ {no: 50, name: 'Ajinkya'}, {no: 89, name: 'Akshay'}, {no: 29, name: 'Rajesh'}, {no: 15, name: 'Vikram'}, ]; const newStructure = array.reduce((acc, {no,name}) => { acc[no] = name; return acc; }, {}); console.log(newStructure);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.