将给定数组的最后 n 个元素移动到数组前面 JavaScript
假设我们必须编写一个数组函数,设为 prependN(),它接受一个数字 n(n <= 使用该函数的数组的长度),从末尾取 n 个元素并将它们放在数组前面。
我们必须就地完成此操作,并且该函数应该仅根据任务的成功完成或失败返回一个布尔值。
例如 −
// if the input array is: const arr = ["blue", "red", "green", "orange", "yellow", "magenta", "cyan"]; // and the number n is 3, // then the array should be reshuffled like: const output = ["yellow", "magenta", "cyan", "blue", "red", "green", "orange"]; // and the return value of function should be true
现在,让我们为此函数编写代码 −
示例
const arr = ["blue", "red", "green", "orange", "yellow", "magenta", "cyan"]; Array.prototype.reshuffle = function(num){ const { length: len } = this; if(num > len){ return false; }; const deleted = this.splice(len - num, num); this.unshift(...deleted); return true; }; console.log(arr.reshuffle(4)); console.log(arr);
输出
控制台中的输出为 −
true [ 'orange', 'yellow', 'magenta', 'cyan', 'blue', 'red', 'green' ]
广告