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

การสร้างสตริงตามเมทริกซ์อักขระและอาร์เรย์ตัวเลขใน JavaScript


ปัญหา

เราจำเป็นต้องเขียนฟังก์ชัน 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