zoukankan      html  css  js  c++  java
  • 数组的扩展

    三点运算:rest参数,将一个数组转化为逗号分隔的序列
    let arr1 = [1,2,3];
    let arr2 = [4,5,6];
    //把数组转换成一个用逗号连接的序列
    let arr3 = [...arr1,...arr2];
    console.log(arr3) //[1, 2, 3, 4, 5, 6]
    
    console.log(...arr1) //1,2,3
    
    //实现插入
    let arr3 = [1,2,3,...arr2,7,8,9]
    console.log(arr3) //[1, 2, 3, 4, 5, 6, 7, 8, 9]
    
    
    Array.from:将伪数组(类似数组的对象)变为真数组
    //js常见的伪数据:html元素数组,arguments
    
    let divArr = document.getElementsByTagName('div');
    divArr = Array.from(divArr);    
    console.log(divArr);
    divArr.forEach(function(item,index){
        console.log(item)
    })
    
    function test(){
        console.log(arguments); //[1,2,3,4,callee:f...]
        let args = Array.from(arguments);
        args.forEach(function(item,index){
            console.log(item,index);//1 0  2 1  3 2  4 3
        })
    }
    test(1,2,3,4);
    
    
    let arr = Array.of(1,2,3,4,5);//将多个元素组合成一个真数组
    console.log(arr)//[1, 2, 3, 4, 5]
    
    Array.prototype
    
    [1,2,3,4,5,6,7].copyWithin(0,4,6);//从0开始替换,替换内容:从4-6
    //[5,6,3,4,5,6,7]
    
    
    let arr = [1,2,3,4,5];
    let res = arr.find(function(item){
        return item>3;//4
    })
    
    let res = arr.findIndex(function(item){
        return item>3; //3
    })
    console.log(res) 
    
    表示范围的都是包头不包尾
    fill(value,start,end)
    console.log([1,2,3,4,5].fill(10)) //[10,10,10,10,10]
    console.log([1,2,3,4,5,6,7].fill(a,0,4)) //[10,10,10,10,10]
    
    entries() keys() values():返回键、值、实体遍历器
    let arr = [1,2,3,4,5];
    arr.values();
    for(let value of arr.values()){
        console.log(value);     //1,2,3,4,5
    }
    for(let index of arr.keys()){
        console.log(index);
    }
    for(let [index,value] of arr.entries){
        console.log(index,value);
    }
    
    let arr = [1,2,3,4,5,NaN];
    console.log(arr.includes(6)) //false
    console.log(arr.includes(NaN)) //true 这个方法可以帮我们找到NaN
  • 相关阅读:
    赫夫曼树编码
    根据先序和中序实现后序
    C++语言实现开心消消乐
    C语言风格实现的开心消消乐
    动态规划
    leetcode dp wordbreakII
    欧拉回路
    欧拉通路是否存在
    Python|多任务:线程、进程、协程--你想要的都在这里
    网络通信:socket、udp与tcp
  • 原文地址:https://www.cnblogs.com/lisa2544/p/15554737.html
Copyright © 2011-2022 走看看