用 splice 函数分别实现 push、pop、shift、unshift 的方法


主要需要注意的是不同方法他们本身返回的值应该是什么,是数组当前的长度,还是取出的元素的值,再在splice函数里面进行相应的return就可以了。具体如下:

  • 用 splice函数实现 push方法
function samePush(arr, value){ arr.splice(arr.length, 0, value) return arr.length } var arr = [3, 4, 5] //使用push方法 arr.push(10) // arr 变成[3,4,5,10],返回4(length长度) //调用函数samePush() samePush(arr,12) // arr变成[3, 4, 5, 10, 12],返回5(length长度) 

 

  • 用 splice函数实现 pop方法
function samePop(arr) { return arr.splice(arr.length-1, 1) } var arr = [3, 4, 5, 16, 17] //使用pop方法 arr.pop() // arr 变成[3, 4, 5, 16],返回17(取出的元素值) //调用函数samePop() samePop(arr) // arr 变成[3, 4, 5],返回16(取出的元素值)


更正:

 

 

  • 用 splice函数实现 shift方法
function sameShift(arr) { return arr.splice(0,1) } var arr = [3, 4, 5, 16, 17] //使用shift方法 arr.shift() // arr 变成[4, 5, 16, 17],返回3(取出的元素值) //调用函数sameShift() sameShift(arr) // arr 变成[5, 16, 17],返回4(取出的元素值)

更正:

 

 

  • 用 splice函数实现 unshift方法
function sameUnshift(arr,value) { arr.splice(0,0,value) return arr.length } var arr = [3, 4, 5, 16, 17] //使用unshift方法 arr.unshift(22) //arr 变成[22, 3, 4, 5, 16, 17],返回6(length长度) //调用函数sameUnshift() sameUnshift(arr,11) // arr 变成[11, 22, 3, 4, 5, 16, 17],返回7(length长度) 

 

参考链接


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM