使用 JavaScript 將數字陣列轉換成字母陣列


問題

我們需要編寫一個 JavaScript 函式,該函式接受一個數字陣列。我們的函式應返回一個由四部分組成的字串 -

  • 一個由陣列中前兩個和後兩個數字派生出的字元組成的四字元“單詞”,順序應從左到右(第一個,第二個,倒數第二個,最後一個),

  • 與上述相同,將陣列按升序排列後再執行操作,

  • 與上述相同,將陣列按降序排列後再執行操作,

  • 與上述相同,將陣列轉換成 ASCII 字元然後按字母順序排列後再執行操作。

四部分應形成一個字串,每部分由連字元 (-) 分隔。

示例

以下是程式碼 -

 線上演示

const arr = [99, 98, 97, 96, 81, 82, 82];
const transform = (arr = []) => {
   let res = [];
   res.push(arr[0], arr[1], arr[arr.length-2], arr[arr.length-1]);
   res = res.map(x=>String.fromCharCode(x)).join('');
   const arr1 = arr
   .map(el => String.fromCharCode(el))
   .sort();
   const arr2 = (arr1.slice(0, 2) + ',' + arr1.slice(-2))
   .split(',')
   .join('');
   const arr3 = arr2
   .split('')
   .reverse()
   .join('');
   return `${res}-${arr2}-${arr3}-${arr2}`;
};
console.log(transform(arr));

輸出

cbRR-QRbc-cbRQ-QRbc

更新於: 2021-04-17

188 次瀏覽

開啟你的 職業

完成課程即可獲得認證

立即開始
廣告
© . All rights reserved.