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

แปลงข้อมูลจากอาร์เรย์ที่ซ้อนกันเป็นวัตถุใน JavaScript


สมมติว่าเรามีอาร์เรย์ต่อไปนี้ -

const arr =[ [ [ ['dog', 'Harry'], ['age', 2] ], [ ['dog', 'Roger'], ['age', 5] ]]; 

เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่รับอาร์เรย์ที่ซ้อนกันดังกล่าว ฟังก์ชันควรเตรียมวัตถุตามอาร์เรย์

วัตถุสำหรับอาร์เรย์ด้านบนควรมีลักษณะดังนี้ −

const output =[ {dog:'Harry', age:2}, {dog:'Roger', age:5}];

ตัวอย่าง

รหัสสำหรับสิ่งนี้จะเป็น −

const arr =[ [ [ ['dog', 'Harry'], ['age', 2] ], [ ['dog', 'Roger'], ['age', 5] ]];const prepareObjectArray =(arr =[]) => { const copy =arr.slice (); copy.forEach ((el, ind, array) => { el.forEach ((องค์ประกอบ, ดัชนี, subArray) => { subArray[element[0]] =องค์ประกอบ [1]; }); el.length =0; array[ind] =Object.assign ({}, อาร์เรย์[ind]); }); return copy;};console.log(prepareObjectArray(arr));

ผลลัพธ์

และผลลัพธ์ในคอนโซลจะเป็น −

[ { สุนัข:'แฮร์รี่' อายุ:2 } { สุนัข:'โรเจอร์' อายุ:5 } ]