数组常用方法

目录

1.数组拼接Array.concat()

2. 遍历数组 Array.every()

3.遍历数组,返回布尔类型 Array.some()

4.遍历数组,过滤数组 Array.filter()

5.遍历数组,返回第一个符合条件的元素 Array.find()

7.遍历数组,让每个元素都调用一次函数,返回新数组 Array.map()

8.遍历数组 Array.forEach()

9.将伪数组转为真数组  Array.from()

10.判断一个数组是否包含一个指定的值,返回布尔类型的值 Array.includes()

11.查找元素索引 Array.indexof()  有的话返回索引,么有返回-1

12.判断是否是数组 Array.isArray()

13.数组转字符串,参数为要拼接的字符 Array.join()

14.数组的增删  push()  unshift()     pop()  shift()

15.翻转数组 Array.reverse()

16.提取/截取数组元素 Array.slice()

17.排序 Array.sort()

18.删除替换 Array.splice()

19.转换为字符串 Array.toString()

20.检测是否是数组 instanceof

21.给数组提供一个函数按序执行Array.reduce


1.数组拼接Array.concat()

// array,concat() 数组拼接,不会改变原数组,返回值是一个新数组
// arr.concat(arr1) 以arr为基础,拼接上arr1
var arr = [1,2,3]
var arr1 = [4,5,6]
var arr2 = [7,8]
var arr3 = arr.concat(arr1,arr2)
console.log(arr3); //[1,2,3,4,5,6,7,8]

2. 遍历数组 Array.every()

//遍历数组,返回布尔类型的值 Array.every()
//遍历数组,必须每个元素都符合表达式才返回true
//参数 1.数组元素 2.索引值 3.数组本身
var arr = [1,2,3,4,5]
var flag = arr.every(function(item,index,array){
    return item <=4
})
console.log(flag); //flase 

3.遍历数组,返回布尔类型 Array.some()

// 遍历数组,返回布尔类型 Array.some()

var arr = [1,2,3,4,5]
var flag = arr.some(function(item,index,array){
    return  item <=1
})
console.log(flag);//ture

4.遍历数组,过滤数组 Array.filter()

//遍历数组,过滤数组 Array.filter()
//筛选 返回一个符合条件的新数组
var arr = [1,3,5,7,9]
var newArr = arr.filter(function(item,index){
    return item >3
})
console.log(newArr);//[ 5, 7, 9 ]

5.遍历数组,返回第一个符合条件的元素 Array.find()

//遍历数组,返回第一个符合条件的元素 Array.find(),没有符合条件返回undefined

var arr = ['red','green','blue','pink']
var item = arr.find((item) => {return item =='blue'})
console.log(item); // 'blue'
var arr1 = [1,3,4,6,8,9]
var item1 = arr1.find(function(item){
    return item >=5
})
console.log(item1);//6
//没满足条件的返回undefined

6.寻找满足条件的第一个元素的索引号  Array.findindex()

// 寻找满足条件的第一个元素的索引号  Array.findindex() ,没有返回-1
var arr = [1,2,3,5,7,8]
var index = arr.findIndex(function(item){
  return  item > 6
})

console.log(index);  // 4

7.遍历数组,让每个元素都调用一次函数,返回新数组 Array.map()

//遍历数组,让每个元素都调用一次函数,返回新数组 Array.map() 不改变数组本身
var arr = [1,3,5,7]
var newArr = arr.map(function(item){
    return item *2
})
console.log(newArr); // [ 2, 6, 10, 14 ]

8.遍历数组 Array.forEach()

//遍历数组 Array.forEach()  返回值 undefined
//不改变元素本身
var arr = ['red=5','blue=6','red=7']
var newArr = []
arr.forEach(function(item){
    newArr.push(item.replace('=',':'))
})
console.log(arr); //[ 'red=5', 'blue=6', 'red=7' ]
console.log(newArr); // [ 'red:5', 'blue:6', 'red:7' ]

9.将伪数组转为真数组  Array.from()

// 将伪数组转为真数组  Array.from()
// 可以转换DOM元素对象数组转为真数组
// 可以转换set
/* var str = 'foo'
 var arr = Array.from(str)
 console.log(arr); //[ 'f', 'o', 'o' ] */
 var s = new Set([1,2,3,4])
console.log(Array.from(s)); //[ 1, 2, 3, 4 ]

10.判断一个数组是否包含一个指定的值,返回布尔类型的值 Array.includes()

//判断一个数组是否包含一个指定的值,返回布尔类型的值 Array.includes()
var arr = [1,3,4,5]
var flag = arr.includes(3)
var flag1 = arr.includes(6)
console.log(flag); //true
console.log(flag1); // flase

11.查找元素索引 Array.indexof()  有的话返回索引,么有返回-1

        Array.lastIndexOf() 从最后开始找

//查找元素索引 Array.indexof()
var arr = [1,2,3,4,5]
var index = arr.indexOf(4) 
var index1 = arr.indexOf(6) 
console.log(index);//3
console.log(index1);//-1

12.判断是否是数组 Array.isArray()

//判断是否是数组 Array.isArray()
var arr = [1,2]
var str = '12'
console.log(Array.isArray(arr)); //true
console.log(Array.isArray(str)); // false

13.数组转字符串,参数为要拼接的字符 Array.join()

// 数组转字符串,参数为要拼接的字符 Array.join()
// 不会改变原数组
var arr = [1,2,3,4]
console.log(arr.join('&'));  // 1&2&3&4
console.log(arr.join('-')); //1-2-3-4

14.数组的增删  push()  unshift()     pop()  shift()

// 数组的增删  push()  unshift()     pop()  shift()
var  arr = [2,4,6]

// push() 末尾增加,返回数组最新长度
console.log(arr.push(8)); //4

// unshift() 开头增加,返回数组最新长度
console.log(arr.unshift(0)); //5

//pop() 末尾删除,返回删除的元素
console.log(arr.pop()); // 8

//shift() 开头删除,返回删除的元素
console.log(arr.shift());//0

15.翻转数组 Array.reverse()

//翻转数组 Array.reverse()
//会改变原数组
var arr= [1,2,3]
arr.reverse()
console.log(arr); // [ 3, 2, 1 ]

16.提取/截取数组元素 Array.slice()

//两个参数,第一个开始,第二个结束  ,包括第一个,不包括第二个
const animals = ['ant', 'bison', 'camel', 'duck', 'elephant'];
console.log(animals.slice(2)); //["camel", "duck", "elephant"]
console.log(animals.slice(2, -1)); //["camel", "duck"]

17.排序 Array.sort()

// 排序 Array.sort()
//不传参数的话以ASCII🐴表排序
// 会改变原数组
var arr = [1,11,4,33,6,2,9]
console.log(arr.sort()); //[ 1, 11, 2, 33, 4,  6, 9]
console.log(arr.sort(function(a,b){
    return a-b
})) // [1,  2,  4, 6, 9, 11, 33]
console.log(arr.sort(function(a,b){
    return b-a
}));//[33, 11, 9, 6,4,  2, 1]

18.删除替换 Array.splice()

//删除替换 Array.splice()  会改变原数组
// 第一个参数:开始位置 第二个参数:删除个数 第三个...  :增加的元素
// 返回值:被删除的元素
var arr= [1,2,3,4,5]
console.log(arr.splice(1,2));//[ 2, 3 ]
console.log(arr.splice(0,0,0)); // []
console.log(arr); // [ 0, 1, 4, 5 ]

19.转换为字符串 Array.toString()

//转换为字符串 Array.toString() 不改变原数组
//不转换原数组 用逗号分隔
var arr = [1,3,5,6,'a']
console.log(arr.toString());// '1,3,5,6,a'

20.检测是否是数组 instanceof

// 检测是否是数组 instanceof
// 检测构造函数的 prototype 属性是否出现在某个实例对象的原型链上。
var arr = []
var str = ''
console.log(arr instanceof Array); //true
console.log(str instanceof Array); //flase
console.log(arr instanceof Object); // true

21.给数组提供一个函数按序执行Array.reduce

 // 创建一个数组
      const arr = [1, 2, 3, 4];
      //arr.reduce有两个参数,第一个参数是处理函数,处理函数有四个参数,第一个是上一次函数的返回值,第二个是数值的元素,第三个是数组索引号,第四个是数组本身
      // 第二个参数是sum的初始值,如果不穿,会将索引值为1的数组元素作为初始值

      const arrSum = arr.reduce((sum, current, index, array) => {
        return (sum += current);
      }, 0);
      console.log(arrSum); // 10

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值