Javascript
 Computer >> コンピューター >  >> プログラミング >> Javascript

JavaScriptで文字行列と数値配列に基づいて文字列を構築する


問題

文字列文字のn*n行列と整数の配列(正および一意)を受け取るJavaScript関数を作成する必要があります。

この関数は、1から始まるインデックスが数値の配列に存在する文字の文字列を作成する必要があります。

文字マトリックス-

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

数値配列-

[1, 4, 5, 7, 11]

これらは、マトリックスの数値配列で指定された1から始まるインデックスに存在する文字であるため、「adore」を返す必要があります。

以下はコードです-

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

  1. JavaScriptの文字頻度に基づく文字列のエンコード

    問題 最初で唯一の引数として文字列strを受け取るJavaScript関数を作成する必要があります。 この関数は、入力文字列に基づいて新しい文字列を作成する必要があります。新しい文字列の各文字は、元の文字列に1回だけ出現する場合は「(」、元の文字列に複数回出現する場合は「)」です。 そして、capitaliを無視する必要があります たとえば、関数への入力が-の場合 入力 const str = 'Success'; 出力 const output = ')())())'; 例 以下はコードです- const str = 'Succes

  2. JavaScriptで配列を電話番号文字列に変換する

    問題 最初で唯一の引数として、正確に10個の正の整数arrの配列を受け取るJavaScript関数を作成する必要があります。 次に、関数は電話番号文字列の形式の文字列を返す必要があります。 たとえば、関数への入力が-の場合 入力 const arr = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]; 出力 const output = '(987) 654-3210'; 例 以下はコードです- const arr = [9, 8, 7, 6, 5, 4, 3, 2, 1, 0]; const createNumber = (arr = []) =