JavaScript数组api大全

342 阅读2分钟

一、操作

1.1 push  往数组的最后加入元素,改变原数组,返回新数组的长度

1.2 unshift 往数组的开头加入元素,改变原数组,返回新数组的长度  

1.3 pop 删除数组的最后一个元素,改变原数组,返回被删除的元素

1.4 shift 删除数组的第一个元素,改变原数组,返回被删除的元素

1.5 splice(index, count, value1, value2...) 删除数组中某个元素,改变原数组

1.6 slice(start, end) 

获取子数组,包含原数组索引start的值到索引end的值,不包含end,返回获取的子数组,不改变原数组

1.7 reverse 反转数组,改变原数组,返回反转后的新数组 

1.8 join 将数组变成字符串,不改变原数组

1.9 split 将字符串变成数组,不改变原字符串

1.10 sort 对数组进行排序,改变原数组,返回排序后的新数组

// 升序
a.sort((a, b) => {
  return a - b
})

//降序
a.sort((a, b) => {
 return b - a
})

1.11 toString 将数组中的元素用逗号拼接成字符串,不改变原数组,返回拼接后的字符串

array.indexOf 

从索引为0开始,检查数组中是否包含有value,有则返回匹配到的第一个索引,没有则返回-1(不改变原数组)

1.12 lastIndexOf 

从最后的索引开始,检查数组找那个是否包含value,有则返回匹配到的第一个索引,没有返回-1(不改变原数组)

array.concat 将数组和(或)值连接成新数组,不改变原数组,返回新数组

二、遍历

for遍历

2.1 for

for(let i = 0; i < arr.length; i++){
  
}

2.2 foreach

arr.forEach(function(item,index,arr),this)

2.3 for-in 一般用来遍历对象

var obj = {
    name: 'test',
    color: 'red',
    day: 'sunday',
    number: 5
}
for (var key in obj) {
    console.log(obj[key])
}

2.4 for-of(es6)可遍历Iterator

for (var a in arr) {
    console.log(a)
}

其他遍历

2.5 map

arr.map(function(item, index){

})

//返回一个新数组

2.6 filter

arr.filter(function(item, index){

})//返回一个过滤后的新数组

2.7 some

arr.some(function(item, index){
    
})

//返回一个bool值,检测数组中是否部门元素满足条件

2.8 every

arr.every(function(item, index){

})

//返回一个bool值,检测数组中是否全部元素满足条件

2.9 reduce

arr.reduce(function(sum, current){
    return sum + current
}, arg(初始值))

//返回一个值,通常用来求总和