• JS 数组学习1


    //创建数组的方式

    //第一种
    var array = [1, 4, 5, 8, 11, 22];

    //第二种
    var arr1 = new Array();
    var arr2 = new Array(10);//指定了数组的长度
    var arr2 = new Array(1, 2, 3, 6, 8);//定义了数组

    //数组的读写
    var result1 = arr2[0];// 数组读取
    arr2[1] = "Burgess";//数组赋值
    alert(result1);
    alert(arr2[1])


    //稀疏数组,索引从0开始的,不连续索引的数组
    var arr3 = new Array(5); //数组长度为5
    arr3[0] = 100;
    arr3[100] = "Bug"; //数组长度变为101

    alert(arr3.length);
    alert(arr3[100])


    //数组元素的添加和删除

    var arr4 = [];//空数组

    //添加方式1
    arr4[0] = 100;
    arr4[1] = 200;
    //添加方式2
    arr4.push(300,400,500);
    alert(arr4.length)

    //清空数组
    var ary5 = [1, 2, 3, 4];
    ary5.splice(0, ary5.length);//清空数组
    console.log(ary5); // 输出 [],空数组,即被清空了

    //删除数组元素
    var ary6 = [1,2,3,4];
    ary6.splice(0,1);//或 ary.splice($.inArray(2, ary), 1); 其中$.inArray(2, ary)用来查找某元素在数组中的索引位置。
    alert(ary6.length)


    //delete 删除数组
    //delete方法:delete arr[1]
    //这种方式数组长度不变,此时arr[1]变为undefined了,
    //但是也有好处原来数组的索引也保持不变, 此时要遍历数组元素可以才用
    delete ary6[1];
    for(index in ary6)//遍历数组
    {
    document.write('ary6['+index+']='+ary6[index]+" ");//这种遍历方式跳过其中undefined的元素
    }


    //数组方法
    //join()方法,将数组中的元素转化为字符串连接
    var arr6 = [1, 2, 3, 4];
    var resultarr6 = arr6.join(",");
    alert(resultarr6);

    //reverse()方法,将数组中的元素颠倒顺序
    var arr6 = [1, 2, 3, 4];
    var resultarr6 = arr6.reverse().join(",");
    alert(resultarr6);
    //sort()方法,将数组中的元素进行排序
    var arr6 = [1, 2, 3, 4];
    var resultarr6 = arr6.sort(function (a,b) {
    return b - a;//从大到小
    //return a - b;//从小到大
    });
    alert(resultarr6.join(","));


    //concat()方法,创建并返回新数组
    var arr7 = [1, 2, 3];
    arr7.concat(4, 5);//返回数组[1,2,3,4,5];
    arr7.concat([4, 5]);//返回数组[1,2,3,4,5];
    arr7.concat([4, 5], 6);//返回数组[1,2,3,4,5,6];
    arr7.concat([4, 5], 6, [7, [8, 9]]);//返回数组[1,2,3,4,5,6,7,[8,9]];

    //slice () 返回数组的一个片段或是子数组

    var arr8 = [1, 2, 3, 4, 5, 6, 7, 8];
    arr8.slice(0, 3) //slice() 存在两个参数(起始点,结束点)
    arr8.slice(3);//存在一个参数(从起始点到结尾)
    arr8.slice(-3,-1);//出现负数,表示从倒数第几个开始到倒数第几个结束

    //splice () 从数组中插入或删除元素.返回删除的数组元素

    var arr9 = [1, 2, 3, 4, 5, 6];

    arr9.splice(1, 5);//存在两个参数(起始点,结束点),返回数组[2,3,4,5,6];
    arr9.splice(4);//存在一个参数(从起始点到结尾),返回数组[5,6];
    arr9.concat([4, 5], 6);//返回数组[15,6];
    arr9.concat([4, 5], 6, [7, [8, 9]]);//返回数组[1,2,3,4,5,6,7,[8,9]];


    //push () 从数组尾部添加元素
    var arr10 = [1, 2, 3, 4, 5, 6];
    arr10.push(7);//返回数组,[1,2,3,4,5,6,7]
    arr10.push(8, 9);//返回数组,[1,2,3,4,5,6,7,8,9]
    //pop () 从数组尾部删除元素
    arr10.pop();//返回数组,[1,2,3,4,5,6,7,8]

    //unshift() 在数组的头部添加元素
    var arr11 = [1, 2, 3, 4, 5, 6];
    arr11.unshift(0);//返回数组[0,1,2,3,4,5,6];
    arr11.unshift(0,8);//返回数组[0,8,1,2,3,4,5,6];
    //shift() 删除数组的第一个元素
    arr11.shift(); //返回数组[8,1,2,3,4,5,6,7]

    //toString()和toLocalString();将数组转换成字符串
    var result11 = arr11.toLocaleString();
    console.log(result11);

  • 相关阅读:
    整理
    C# =>语法
    这台计算机上缺少此项目引用的 NuGet 程序包。使用“NuGet 程序包还原”解决办法
    腾讯云静态资源放到cos存储桶里,并开启CDN自定义域名加速
    react lodash节流this找不到正确用法
    reactrouter V6踩坑
    查询net Framework 安装版本
    Nginx实现同一个端口访问不同前后端项目
    vue3 + vite + ts 学习笔记
    Vue3 全家桶,从 0 到 1 实战项目
  • 原文地址:https://www.cnblogs.com/2260827114com/p/6433010.html
Copyright © 2020-2023  润新知