Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Javascript

การแปลงวัตถุเป็นอาร์เรย์ 2 มิติใน JavaScript


สมมติว่าเรามีวัตถุที่มีข้อมูลเกี่ยวกับสภาพอากาศของเมือง -

const obj = {
   city: "New Delhi",
   maxTemp: 32,
   minTemp: 21,
   humidity: 78,
   aqi: 456,
   day: 'Tuesday',
};

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับวัตถุดังกล่าว ฟังก์ชั่นควรสร้างอาร์เรย์ของอาร์เรย์ตามวัตถุนี้โดยที่แต่ละ subarray มีคุณสมบัติสองประการ -

  • คีย์ที่เกี่ยวข้อง

  • ค่าของคีย์นั้น

ดังนั้น สำหรับวัตถุข้างต้น ผลลัพธ์ควรมีลักษณะดังนี้ −

const output = [
   [ 'city', 'New Delhi' ],
   [ 'maxTemp', 32 ],
   [ 'minTemp', 21 ],
   [ 'humidity', 78 ],
   [ 'aqi', 456 ],
   [ 'day', 'Tuesday' ]
];

ตัวอย่าง

ต่อไปนี้เป็นรหัส -

const obj = {
   city: "New Delhi",
   maxTemp: 32,
   minTemp: 21,
   humidity: 78,
   aqi: 456,
   day: 'Tuesday',
};
const objectToArray = (obj = {}) => {
   const res = [];
   const keys = Object.keys(obj);
   for(key of keys){
      res.push([
         key, obj[key]
      ]);
   };
   return res;
};
console.log(objectToArray(obj));

ผลลัพธ์

ต่อไปนี้เป็นผลลัพธ์บนคอนโซล -

[
   [ 'city', 'New Delhi' ],
   [ 'maxTemp', 32 ],
   [ 'minTemp', 21 ],
   [ 'humidity', 78 ],
   [ 'aqi', 456 ],
   [ 'day', 'Tuesday' ]
];