JavaScript 优雅的 循环数组 移位函数

Array.prototype.循环 = function 循环 (参_循环次数) {
    if (this.length == 0) return this;
    参_循环次数 = (参_循环次数 || 1) % this.length;
    var 局_Getter = 参_循环次数 > 0 ? this.shift : this.pop;
    var 局_Setter = 参_循环次数 > 0 ? this.push : this.unshift;
    if (参_循环次数 < 0) 参_循环次数 = - 参_循环次数;
    while (参_循环次数 --> 0) 局_Setter.call (this, 局_Getter.apply (this));
    return this;
}

用法:

[1, 2, 3, 4, 5].循环 (-1);

结果:

[5, 1, 2, 3, 4]

你可能感兴趣的:(javascript,前端,开发语言)