สมมติว่าเรามีวัตถุเช่นนี้ −
const dataset = {
"diamonds":77,
"gold-bars":28,
"exciting-stuff":52,
"oil":51,
"sports-cars":7,
"bitcoins":40
}; เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับออบเจ็กต์ดังกล่าวและส่งคืนอาร์เรย์ของออบเจ็กต์ที่มีคีย์และค่าที่แยกจากกัน
ดังนั้น สำหรับวัตถุข้างต้น ผลลัพธ์ควรเป็น −
const output = [
{"asset":"diamonds", "quantity":77},
{"asset":"gold-bars", "quantity":28},
{"asset":"exciting-stuff", "quantity":52},
{"asset":"oil", "quantity":51},
{"asset":"bitcoins", "quantity":40}
]; ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const dataset = {
"diamonds":77,
"gold-bars":28,
"exciting-stuff":52,
"oil":51,
"sports-cars":7,
"bitcoins":40
};
const splitKeyValue = obj => {
const keys = Object.keys(obj);
const res = [];
for(let i = 0; i < keys.length; i++){
res.push({
'asset': keys[i],
'quantity': obj[keys[i]]
});
};
return res;
};
console.log(splitKeyValue(dataset)); ผลลัพธ์
สิ่งนี้จะสร้างผลลัพธ์ต่อไปนี้บนคอนโซล -
[
{ asset: 'diamonds', quantity: 77 },
{ asset: 'gold-bars', quantity: 28 },
{ asset: 'exciting-stuff', quantity: 52 },
{ asset: 'oil', quantity: 51 },
{ asset: 'sports-cars', quantity: 7 },
{ asset: 'bitcoins', quantity: 40 }
]