码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2018-07-22 14:12:47      阅读:184      评论:0      收藏:0      [点我收藏+]

标签:mep   rip   mes   tle   push   注意   同方   需要   调用   

主要需要注意的是不同方法他们本身返回的值应该是什么,是数组当前的长度,还是取出的元素的值,再在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长度)

 

参考链接

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

标签:mep   rip   mes   tle   push   注意   同方   需要   调用   

原文地址:https://www.cnblogs.com/evenyao/p/9346786.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!