js 删除数组最后一个对象_Js -- 数组对象

5a159b72d0d2f6ef9996f451bc85ec53.png

Ⅰ 数组定义

var l = [11,22,33,44,55]

typeof l
"object"
var l1 = [11,'sdasd',11.11,true]

l1[1]
"sdasd"
l1[-1]  # 不支持负数索引

e424ce96ec1c7fead5ff1c3ce3b8785c.png
.length	-- 数组的大小
.push(ele)	--尾部追加元素
.pop()	-- 获取尾部的元素,同时从数组中删除
.unshift(ele)	-- 头部插入元素
.shift()	-- 头部移除元素
.slice(start, end)	-- 切片
.reverse()	-- 反转
.join(seq)	-- 将数组元素连接成字符串
.concat(val, ...)	-- 连接数组
.sort()	-- 排序
关于sort()需要注意:
如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。

var l = [111,222,333,444,555,666]
undefined
l.length   //  查看列表有几个元素
6

l.push(777)   //  尾部追加添加值
7

l
(7) [111, 222, 333, 444, 555, 666, 777]
l.pop()   //  拿掉最后一个参数,并返回
777

l
(6) [111, 222, 333, 444, 555, 666]
l.unshift(123)    //  头部插入元素
7

l
(7) [123, 111, 222, 333, 444, 555, 666]
l.shift()    //  头部移除元素,拿到移除结果
123

l.slice(0,3)   //  切片
(3) [111, 222, 333]
l.reverse()   //  反转
(6) [666, 555, 444, 333, 222, 111]
l.join('$')  # 跟python刚好相反,这里是将数组链接成字符串样式
"666$555$444$333$222$111"

l.concat([111,222,333])  # extend  // 链接数组,两个拼接一个
(9) [666, 555, 444, 333, 222, 111, 111, 222, 333]
l.sort()   // 排序,默认升序
(6) [111, 222, 333, 444, 555, 666]

520dfde4ab6c1b912e39102791e814f6.png

Ⅱ .forEach()--将数组的每个元素传递给回调函数

var ll = [111,222,333,444,555,666]
ll.forEach(function(value){console.log(value)},ll)
VM2277:1 111  # 一个参数就是数组里面每一个元素对象
VM2277:1 222
VM2277:1 333
VM2277:1 444
VM2277:1 555
VM2277:1 666

ll.forEach(function(value,index){console.log(value,index)},ll)
VM2346:1 111 0  # 两个参数就是元素 + 元素索引
VM2346:1 222 1
VM2346:1 333 2
VM2346:1 444 3
VM2346:1 555 4
VM2346:1 666 5
undefined
ll.forEach(function(value,index,arr){console.log(value,index,arr)},ll)  # 元素 + 元素索引 + 元素的数据来源
VM2430:1 111 0 (6) [111, 222, 333, 444, 555, 666]
VM2430:1 222 1 (6) [111, 222, 333, 444, 555, 666]
VM2430:1 333 2 (6) [111, 222, 333, 444, 555, 666]
VM2430:1 444 3 (6) [111, 222, 333, 444, 555, 666]
VM2430:1 555 4 (6) [111, 222, 333, 444, 555, 666]
VM2430:1 666 5 (6) [111, 222, 333, 444, 555, 666]
undefined

ll.forEach(function(value,index,arr,xxx){console.log(value,index,arr,xxx)},ll)  # 最多三个
VM2532:1 111 0 (6) [111, 222, 333, 444, 555, 666] undefined
VM2532:1 222 1 (6) [111, 222, 333, 444, 555, 666] undefined
VM2532:1 333 2 (6) [111, 222, 333, 444, 555, 666] undefined
VM2532:1 444 3 (6) [111, 222, 333, 444, 555, 666] undefined
VM2532:1 555 4 (6) [111, 222, 333, 444, 555, 666] undefined
VM2532:1 666 5 (6) [111, 222, 333, 444, 555, 666] undefined

Ⅲ .splice()--删除元素,并向数组添加新元素。

ll
(6) [111, 222, 333, 444, 555, 666]
ll.splice(0,3)  # 两个参数 第一个是起始位置 第二个是删除的个数
(3) [111, 222, 333]
ll
(3) [444, 555, 666]
ll.splice(0,1,777)  # 先删除指定内容,然后添加新内容
[444]
ll
(3) [777, 555, 666]
ll.splice(0,1,[111,222,333,444])   // 会将数组当成一个参数
[777]
ll
(3) [Array(4), 555, 666]

348f265dab2d6ef4fbe26d0e28fe42b7.png

Ⅳ .map()--返回一个数组元素调用函数处理后的值的新数组

var l1 = [11,22,33,44,55,66]
undefined
l1.map(function(value){console.log(value)},l1)
VM3115:1 11
VM3115:1 22
VM3115:1 33
VM3115:1 44
VM3115:1 55
VM3115:1 66
l1.map(function(value,index){return value*2},l1)
(6) [22, 44, 66, 88, 110, 132]
l1.map(function(value,index,arr){return value*2},l1)
(6) [22, 44, 66, 88, 110, 132]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值