Array.prototype.remove = function(obj){
if(null == obj){ return false }
for (var i =0 ,n =0 ;i
学javascript有一段时间了,今天看下论坛上的很多代码都不懂,前来问问,
1,为什么会想到这样的写法,他是怎么想的呢?
2,有没有更好点的写法,我感觉我很笨有的像伸手党。。。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
Array的remove方法肯定离不开splice,你的remove方法接受的是一个obj,如果不考虑对象不同,但是值相同的情况,那么下面的方法应该是最简单的:亲测上面的remove方法是有问题的。比如var arr = [1,2,3,4];arr.remove(5) //arr = [1,2,3]
如果是不包含对象的数组、我这里写了一个方法
其实不是对象的话对比起来很简单、
你上面的方法确实有问题、如果输入一个无穷大的数字、他会删掉最后一个、最后一个length-=1不严谨
不谢
用reduce吧: