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