首页>>新闻中心>>ES6学习方法

数组的一些方法

来源: 本站    发布时间: 2021-02-21 12:12    阅读次数:

  let divs = document.getElementsByTagName("div")
    console.log(divs) //HTMLCollection
    let divs2 = document.getElementsByClassName("div")
    console.log(divs2) //HTMLCollection
    let divs3 = document.querySelectorAll(".div")
    console.log(divs3) // NodeList
    console.log(divs3.length)
    console.log(divs instanceof Array)  //false 不是一个真正意义上的数组,但是有数组的长度,没有数组的方法
    console.log(divs instanceof Object)
    let arr = Array.prototype.slice.call(divs) //ES5把一个伪数组转换为一个数组
    let arr1 = Array.from(divs) //ES6把一个伪数组转换为一个数组
    arr.push("2");
    arr1.push("严钢");
    console.log(arr)
    console.log(arr1)
    function  foo() {
        console.log(arguments) //arguments也是一个伪数组
        console.log(arguments instanceof Array)
    }
    foo(1, "imooc", true)
    let arrayLike = {
        0:"es5",
        1:"es6",
        2:"es7",
        length: 3
    }
    let arr3 = Array.from(arrayLike)
    arr3.push("ES9")
    console.log(arr3)
    let arr4 = new Array(3) //当传入一个参数的时候,就是一个数组的长度
    console.log(arr4)
    let arr5 = Array.of("1sss","adad")
    console.log(...arr5)
    let arr7 = [1, 2, 3, 4, 5, 6]
    //let arr6 = arr7.copyWithin(0, 1, 2) //替换值,第一个参数是开始替换的参数起始位置,第二个参数是替换的参数,第三个参数是结束的参数,改变原数组
    let arr8 = Array(3).fill(7)
    console.log(arr8)
    let  arr9 = arr7.fill("Y", 1, 4) // 也会修改原数组值
    console.log(arr7)  //[2, "Y", "Y", "Y", 5, 6]
    let arr10 = [1, 2, 3, NaN];
    console.log(arr10.indexOf(2)) //1
    console.log(arr10.indexOf(NaN)) //-1
    console.log(arr10.includes(NaN)) // true
一起设计吧
BACK