js 数组常用方法

1. for in(array, obj)

  • 最基本的数组遍历
let arr = [1,2,3,4,5,6]
    for(let i in arr){
        console.log(arr[i])
        console.log(typeof(i))
    }

打印结果:
在这里插入图片描述

注意,这里的i类型为string!

2. for of(array)

let arr = [1,2,3,4,5,6]
    for(let i of arr){
        console.log(i)
    }

打印结果:
在这里插入图片描述

3. for each

  • 简易版的for循环
let arr = [1,2,3,4,5,6]
    let brr = arr.forEach((item,index,arr)=>{
        console.log(item, index, arr)
    })

打印结果:
在这里插入图片描述

4. map

  • 给定一个函数,需要返回值,将其其返回值组成一个新的数组,不影响原数组
let arr = [1,2,3,4,5,6]
    let brr = arr.map((item,index,arr)=>{
        return item + 1
    })
    console.log(brr)	//[2,3,4,5,6,7]

5. filter

  • 给定一个函数,对每一项进行筛选,组成一个新数组重新返回
	let arr = [1,2,3,4,5,6]
    let brr = arr.filter((item,index,arr)=>{
        return item > 2
    })
    console.log(brr)    //[3,4,5,6]

6. some

  • 传入的函数对数组重的某一项返回true,这个方法才返回true
	let arr = [1,2,3,4,5,6]
    let flag = arr.some((item,index,arr)=>{
        return item > 5
    })
    console.log(flag)   //true

7. every

  • 传入的函数必须对每一项都返回true,这个方法才返回true
	let arr = [1,2,3,4,5,6]
    let flag = arr.every((item,index,arr)=>{
        return item > 0
    })
    console.log(flag)   //true

8. includes

  • 判断数组是否包含某一项,返回布尔值
	let arr = [1,2,3,4,5]
    let flag1 = arr.includes(6)     //false
    console.log(flag1)
    let flag2 = arr.includes(5)     //true
    console.log(flag2)

9. fill

fill() 方法用于将一个固定值替换数组的元素。
[1, 2, 3].fill(4);               // [4, 4, 4]
[1, 2, 3].fill(4, 1);            // [1, 4, 4]
[1, 2, 3].fill(4, 1, 2);         // [1, 4, 3]
[1, 2, 3].fill(4, 1, 1);         // [1, 2, 3]
[1, 2, 3].fill(4, 3, 3);         // [1, 2, 3]
[1, 2, 3].fill(4, -3, -2);       // [4, 2, 3]
[1, 2, 3].fill(4, NaN, NaN);     // [1, 2, 3]
[1, 2, 3].fill(4, 3, 5);         // [1, 2, 3]
Array(3).fill(4);                // [4, 4, 4]
[].fill.call({ length: 3 }, 4);  // {0: 4, 1: 4, 2: 4, length: 3}

// Objects by reference.
var arr = Array(3).fill({}) // [{}, {}, {}];
// 需要注意如果fill的参数为引用类型,会导致都执行都一个引用类型
// 如 arr[0] === arr[1] 为true
arr[0].hi = "hi"; // [{ hi: "hi" }, { hi: "hi" }, { hi: "hi" }]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值