js数组的常用方法总结

1,创建数组

var arr=[]  //字面量定义
var arr=new Array() //调用数组构造函数生成
//用new 关键字去内存开辟一个存储地址比较耗资源,耗内存;而字面量方式直接在内存开辟一个存储字段相对简单,不耗资源.

2,数组元素的读写

var arr = [1,2,3]  
console.log(arr[0]) //1
arr[1]=6
console.log(arr)    //[1,6,3]

3,数组的长度length

var arr = [1,2,3]  
console.log(arr.length) //3

4,数组的添加和删除

var arr = [1,2,3]  
arr.push(4) //push在数组的尾部添加一个或多个元素
console.log(arr)    //[1,2,3,4]
delete arr[1]   //delete运算符删除数组元素,不会修改数组长度,如果删除元素,它就变成了稀疏数组
console.log(arr)    //[1, empty, 3, 4]

5,数组的方法
join()
将数组中元素转化成字符串,如不指定分隔符,默认使用逗号

var arr = [1,2,3,4,5]
var str=arr.join(';')
console.log(str) //1;2;3;4;5

reverse()
将数组中的元素颠倒顺序,返回逆序的数组

var arr = [1,2,3,4,5]
arr.reverse()
console.log(arr) //[5, 4, 3, 2, 1]

sort()
将数组中的元素排序并返回排序后的数组,当不带参数时,数组元素以字母表顺序排序

var arr = ["a","c","b","e","d"]
arr.sort()
console.log(arr) //["a", "b", "c", "d", "e"]
var arr2=[23,15,59,63,25]
arr2.sort(function(a,b){
     return a-b
})
console.log(arr2)   //[15, 23, 25, 59, 63]

concat()
创建并返回一个新数组,将原始数组和concat()的参数连接

var arr1 = [1,2,3,4]
var arr2=[5,6]
var arr=arr1.concat(arr2)
console.log(arr)   //[1, 2, 3, 4, 5, 6]
console.log(arr.concat(7,8))    //[1, 2, 3, 4, 5, 6, 7, 8]

slice()返回数组的一个片段,两个参数分别指定开始和结束位置,如果参数出现负数,它表示相对数组的最后一个元素

var arr = [1,2,3,4,5]
var arr1=arr.slice(1,-2)
console.log(arr1)   //[2, 3]

splice()插入或删除元素,会修改数组,第一个参数起始点的位置,第二个参数删除的个数,如果省略第二个参数,从其实点位置到数组结尾所有元素都被删除

var arr = [1,2,3,4,5]
arr.splice(4,1)
console.log(arr)//[1, 2, 3, 4]
arr.splice(2,0,3,5)
console.log(arr)//[1, 2, 3, 5, 3, 4]

push()
在数组的尾部添加一个或多个元素,并返回数组新的长度

var arr = []
arr.push(1,2)
console.log(arr)//[1, 2]

pop()
删除数组的最后一个元素,返回它删除的值

var arr = [1,2,3,4]
console.log(arr.pop())//4
console.log(arr)//[1,2,3]

unshift()和shift()
unshift()在数组的头部插入元素,返回数组的长度
shift()删除数组的第一个元素并将其返回

var arr = [1,2,3,4]
console.log(arr.unshift(0))//5
console.log(arr)//[0, 1, 2, 3, 4]
console.log(arr.shift())//0
console.log(arr)//[1,2,3,4]

toString()和toLocaleString()
toString()将数组转化为字符串
toLocaleString()把数组转换为本地字符串。

var arr = [1,2,3,4]
console.log(arr.toString())//1,2,3,4
console.log(arr)//[1,2,3,4]

map()
调用数组的每个元素传递给指定的函数,并返回一个数组,包含该函数的返回值

var arr = [1,2,3,4]
var arr1=arr.map(function(item){
    return item*item
})
console.log(arr)//[1, 2, 3, 4]
console.log(arr1)// [1, 4, 9, 16]

filter()
返回的数组元素是调用的数组的一个子集,用来逻辑判定,该函数返回true和false

var arr = [1, 2, 3, 4]
var arr1 = arr.filter(function (item) {
    return item % 2 === 0
})
console.log(arr)//[1, 2, 3, 4]
console.log(arr1)// [2, 4]

every()
逻辑判定,数组中所有元素调用特定的函数都返回true,它才返回true

var arr = [1, 2, 3, 4]
var arr1 = arr.every(function (item) {
	return item % 2 === 0
})
console.log(arr1)//false
var arr2=arr.every(function(item){
	return item<5
})
console.log(arr2)//true

some()
逻辑判断,数组中有一个元素返回true就返回true

var arr = [1, 2, 3, 4]
var arr1 = arr.some(function (item) {
	return item % 2 === 0
})
console.log(arr1)//true
var arr2=arr.some(function(item){
	return item<5
})
console.log(arr2)//true

reduce()和reduceRight()
使用指定的函数将数组元素进行组合,生成单个值,第一个参数操作的函数,第二个参数是传递给函数的初始值,reduceRight()是从右到左处理函数的

var arr = [1, 2, 3, 4]
var arr1 = arr.reduce(function (x,y) {
	return x-y
},1)
console.log(arr1)//-9

indexOf()和lastIndexOf()
搜索数组中元素,返回找到的第一个元素的索引,如果没有找到者返回-1,indexOf()从头开始搜索,lastIndexOf()反向搜索

var arr = [1, 2, 3, 4, 2]
console.log(arr.indexOf(2))//1
console.log(arr.indexOf(5))//-1
console.log(arr.lastIndexOf(2))//4

isArray()
判断是否为数组返回true或false

var arr = [1, 2, 3, 4, 2]
console.log(Array.isArray(arr))//true
var obj={a:1,b:2}
console.log(Array.isArray(obj))//false

类数组
相当于一个对象,又数组的值和相应的属性length
javascript中常见的类数组有 arguments 对象和 DOM 方法的返回结果,比如
document.getElementsByTagName() ;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值