Computer >> Máy Tính >  >> Lập trình >> Javascript

Xây dựng một chuỗi dựa trên ma trận ký tự và mảng số trong JavaScript

Vấn đề

Chúng tôi được yêu cầu viết một hàm JavaScript nhận trong ma trận n * n các ký tự chuỗi và một mảng các số nguyên (dương và duy nhất).

Hàm của chúng ta nên tạo một chuỗi các ký tự có chỉ số dựa trên 1 có trong mảng số.

Ma trận ký tự -

[
   [‘a’, ‘b’, ‘c’, d’],
   [‘o’, ‘f’, ‘r’, ‘g’],
   [‘h’, ‘i’, ‘e’, ‘j’],
   [‘k’, ‘l’, ‘m’, n’]
];

Mảng số -

[1, 4, 5, 7, 11]

Nên trả về "adore" vì đây là các ký tự hiện diện ở các chỉ số dựa trên 1 được chỉ định bởi mảng số trong ma trận.

Ví dụ

Sau đây là mã -

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));

Đầu ra

Sau đây là đầu ra của bảng điều khiển -

adore