从两端配对 JavaScript 中的数组
我们需要编写一个 JavaScript 函数,该函数接收一个数字/字符串文本数组,并返回另一个数组的数组。每个子数组正好包含两个元素,第 n 个元素从起始第 n 个元素开始到末尾第 n 个元素。
比如:如果数组是 −
const arr = [1, 2, 3, 4, 5, 6];
那么输出应该是 −
const output = [[1, 6], [2, 5], [3, 4]];
示例
代码将是 −
const arr = [1, 2, 3, 4, 5, 6]; const edgePairs = arr => { const res = []; const upto = arr.length % 2 === 0 ? arr.length / 2 : arr.length / 2 - 1; for(let i = 0; i < upto; i++){ res.push([arr[i], arr[arr.length-1-i]]); }; if(arr.length % 2 !== 0){ res.push([arr[Math.floor(arr.length / 2)]]); }; return res; }; console.log(edgePairs(arr));
输出
控制台输出将是 −
[ [ 1, 6 ], [ 2, 5 ], [ 3, 4 ] ]
广告