使用 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.