Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> JavaScript

แปลงอาร์เรย์ออบเจกต์เป็นอาร์เรย์ของอาร์เรย์ใน JavaScript


สมมติว่าเรามีอาร์เรย์ของออบเจกต์ดังนี้

const arr = [ 
  {"Date":"2014","Amount1":90,"Amount2":800}, 
  {"Date":"2015","Amount1":110,"Amount2":300}, 
  {"Date":"2016","Amount1":3000,"Amount2":500} 
];

เราต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ดังกล่าวและแมปอาร์เรย์นี้ไปยังอีกอาร์เรย์หนึ่งที่ประกอบด้วยอาร์เรย์แทนที่จะเป็นออบเจกต์

ดังนั้น อาร์เรย์สุดท้ายควรเป็นดังนี้

const output = [ 
  ['2014', 90, 800], 
  ['2015', 110, 300], 
  ['2016', 3000, 500] 
];

ตัวอย่างโค้ด

โค้ดสำหรับการทำงานนี้จะเป็นดังนี้

const arr = [ 
  {"Date":"2014","Amount1":90,"Amount2":800}, 
  {"Date":"2015","Amount1":110,"Amount2":300}, 
  {"Date":"2016","Amount1":3000,"Amount2":500} 
]; 
const arrify = (arr = []) => { 
  const res = []; 
  const { length: l } = arr; 
  for(let i = 0; i < l; i++){ 
    const obj = arr[i]; 
    const subArr = Object.values(obj); 
    res.push(subArr); 
  }; 
  return res; 
}; 
console.log(arrify(arr));

ผลลัพธ์

ผลลัพธ์ในคอนโซลจะเป็นดังนี้

[ [ '2014', 90, 800 ], [ '2015', 110, 300 ], [ '2016', 3000, 500 ] ]