ปัญหา
เราจำเป็นต้องเขียนฟังก์ชัน JavaScript ที่ใช้เมทริกซ์ n * n ของอักขระสตริงและอาร์เรย์ของจำนวนเต็ม (บวกและเฉพาะ)
ฟังก์ชันของเราควรสร้างสตริงของอักขระที่มีดัชนีแบบ 1 ในอาร์เรย์ของตัวเลข
ตัวละครเมทริกซ์ -
[ [‘a’, ‘b’, ‘c’, d’], [‘o’, ‘f’, ‘r’, ‘g’], [‘h’, ‘i’, ‘e’, ‘j’], [‘k’, ‘l’, ‘m’, n’] ];
อาร์เรย์ตัวเลข -
[1, 4, 5, 7, 11]
ควรส่งคืน 'adore' เพราะสิ่งเหล่านี้เป็นอักขระที่มีอยู่ในดัชนีแบบ 1 ที่ระบุโดยอาร์เรย์ตัวเลขในเมทริกซ์
ตัวอย่าง
ต่อไปนี้เป็นรหัส -
const arr = [
['a', 'b', 'c', 'd'],
['o', 'f', 'r', 'g'],
['h', 'i', 'e', 'j'],
['k', 'l', 'm', 'n']
];
const pos = [1, 4, 5, 7, 11];
const buildString = (arr = [], pos = []) => {
const flat = [];
arr.forEach(sub => {
flat.push(...sub);
});
let res = '';
pos.forEach(num => {
res += (flat[num - 1] || '');
});
return res;
};
console.log(buildString(arr, pos)); ผลลัพธ์
ต่อไปนี้เป็นเอาต์พุตคอนโซล -
adore