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

แปลง JSON Object เป็น JavaScript Array - JavaScript

อ็อบเจ็กต์ key เป็นตัวเลขสตริง: {"0": "Rakesh", "1": "Dinesh", "2": "Mohit", "3": "Rajan", "4": "Ashish"}

แปลงเป็นอาร์เรย์ตามลำดับ key

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

const obj = {
  "0": "Rakesh",
  "1": "Dinesh",
  "2": "Mohit",
  "3": "Rajan",
  "4": "Ashish"
};
const objectToArray = (obj) => {
  const res = [];
  const keys = Object.keys(obj);
  keys.forEach(el => {
    res[+el] = obj[el];
  });
  return res;
};
console.log(objectToArray(obj));

ผลลัพธ์

[ 'Rakesh', 'Dinesh', 'Mohit', 'Rajan', 'Ashish' ]

คำอธิบาย: Object.keys() ได้ key เรียงตามลำดับ +el แปลงสตริงเป็นตัวเลข (unary plus) ใช้เป็น index วางค่าในอาร์เรย์ผลลัพธ์

วิธีง่ายกว่า: Object.values(obj) (ถ้า key เรียง 0,1,2...) หรือ Object.entries(obj).sort((a,b)=>a[0]-b[0]).map(e=>e[1])