gpt4 book ai didi

Javascript - 数组弹出 polyfill 代码

转载 作者:行者123 更新时间:2023-11-30 17:35:53 25 4
gpt4 key购买 nike

如果我想从头开始编写 pop 函数,最有效的方法是什么?主要问题也是如何在没有弹出元素的情况下返回原始数组?

Array.prototype.pop = function () {
var myArray = this;
var length = myArray.length;
var element = myArray[length-1];
myArray = myArray.slice(0,length-1);
return element;
}

var hello = [1,2,3,4,5];
hello.pop();
5
console.log(hello)
[1, 2, 3, 4, 5]

最佳答案

使用 splice 而不是 slice - slice 不会修改原始数组,而 splice 会。

就是说,因为您要删除最后一个元素,所以它将是 return myArray.splice(length-1,1);... 这实际上是 return 的别名myArray.pop() 首先。

或者,尝试:

var element = myArray[length-1];
myArray.length = length-1;
return element;

关于Javascript - 数组弹出 polyfill 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22081328/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com