เราจำเป็นต้องเขียนฟังก์ชันที่รับสตริงเป็นอาร์กิวเมนต์แรกและอาร์กิวเมนต์เดียว และสร้างวัตถุด้วยคีย์ตามอักขระเฉพาะของสตริงและค่าของแต่ละคีย์โดยค่าเริ่มต้นเป็น 0
ตัวอย่างเช่น หากสตริงอินพุตคือ −
const str = 'hello world!';
ผลลัพธ์
จากนั้นวัตถุเอาต์พุตควรเป็น −
const obj = { "h": 0, "e": 0, "l": 0, "o": 0, " ": 0, "w": 0, "r": 0, "d": 0, "!": 0 }; ตัวอย่าง
มาเขียนโค้ดสำหรับฟังก์ชันนี้กัน −
const str = 'hello world!';
const stringToObject = str => {
return str.split("").reduce((acc, val) => {
acc[val] = 0;
return acc;
}, {});
};
console.log(stringToObject(str));
console.log(stringToObject('is it an object')); ผลลัพธ์
เอาต์พุตในคอนโซล −
{ h: 0, e: 0, l: 0, o: 0, ' ': 0, w: 0, r: 0, d: 0, '!': 0 }
{ i: 0, s: 0, ' ': 0, t: 0, a: 0, n: 0, o: 0, b: 0, j: 0, e: 0, c: 0 }