JavaScript数组相关方法学习笔记

ECMAScript3中的数组方法

代码部分为在Chrome控制台的运行结果。

  • join()
    将数组中所有的元素转化为字符串拼接在一起,返回字符串。Array.join()是String.split()的逆向操作。
var a = [1,2,3]
a.join("+")
//"1+2+3"
var b = "1+2+3"
b.split("+")
//["1", "2", "3"]
  • reverse()
    返回逆序的数组。
a.reverse()
//[3, 2, 1]
  • sort()
    返回排序后的数组。若不带参数,数组元素以字母表顺序排序。
    ! !sort()可以传递一个比较参数。若第一个参数在前,返回一个小于0的数值。若第一个参数在后,返回一个大于0的数值。
var a = [33,4,1111,222]
a.sort()
//[1111, 222, 33, 4]
a.sort(function(a,b){return a-b})
//[4, 33, 222, 1111]
a.sort(function(a,b){return b-a})
//[1111, 222, 33, 4]
  • concat()
    创建并返回一个新数组。
var a = [1,2,3]
a.concat(4,5)
//[1, 2, 3, 4, 5]
a.concat([4,5])
//[1, 2, 3, 4, 5]
a.concat([4,[5]])
//[1, 2, 3, 4, Array[1]]
  • slice()
    返回指定数组的一个片段或者数组。两个参数为开始和结束的位置,第二个参数可省。可为负数,即倒数。
var a = [1,2,3,4,5]
a.slice(1)
//[2, 3, 4, 5]
a.slice(1,-2)
//[2, 3]
  • splice()
    第一个参数指定插入/删除的起始位置,第二个指定从数组中删除的元素的个数。其后任意个数的参数指定需要插入到数组中的元素。不同于slice()、concat(),splice()会修改调用的数组!!
var a = [1,2,3,4,5]
var b = a.splice(2)
a
//[1, 2]
b
//[3, 4, 5]
  • pop() push()
    允许将数组当作栈来使用。注意,两个方法都修改并替换原始数组而非生成一个修改版的新数组。

  • unshift() shift()
    类似于pop() push(),但是这是操作于头部。且unshift()若有多个参数,是一次性插入的,而非一次一个地插入。
    unshift()返回数组新的长度,shift() 删除数组的第一个元素并将其返回。

var a = []
a.unshift(1)
//1
a.unshift(22)
//2
a.shift()
//22
a.unshift(3,[4,5])
//3
a
//[3, Array[2], 1]
  • toString()
    将每个元素转化为字符串

ECMAScript5中的数组方法

  • forEach()
    从头至尾遍历数组。使用三个参数:数组元素、元素的索引、数组本身。forEach()没有像for循环中使用的相应的break语句。若提前终止,必须把forEach()放在一个try中
var data = [1,2,3,4,5]
data.forEach(function(v,i,a){a[i] = v + 1;})
data

//[2, 3, 4, 5, 6]
  • map()
    将调用的数组的每个元素传递给指定的函数,并返回一个新数组,包含该函数的返回值。
data2 = data.map(function(v){return v*v })
data
//[2, 3, 4, 5, 6]
data2
//[4, 9, 16, 25, 36]
  • filter()
    返回的数组元素是调用的数组的一个子集,传递的函数用来逻辑判定。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值