• JS中数组的介绍


    一、数组:

      一组数据的集合;

    二、JS中数组的特点:

    1、数组定义时无需指定数据类型;

    2、数组定义时可以无需指定数组长度;

    3、数组可以存储任何类型的数据;

    4、一般是相同的数据类型;

    三、数组的创建方式:

    var arr=[值1,值2,值3];                  //字面量定义
    
    var arr = new Array (值1,值2,值3); //构造函数创建
    
    var array =new Array(size);               //创建数组并指定长度

    四、数组的操作:

        数组名.方法

    1、push()  向数组末尾添加新的数组项,返回值新数组的长度,原数组改变;

    2、pop()   删除数组最后一项,没有参数,返回值删除项,原数组改变;

    3、unshift()  向数组开头位置添加,返回值是新数组的长度,原数组改变;

    4、shift()   删除数组第一项,没有参数,返回值删除项,原数组改变;

    5、splice(n,m)   从索引n开始,删除m个,返回值以数组的形式返回删除项(没有m的话,删除到最后);

        splice(0)  原数组清空,返回一个和原来一样的新数组;

        splice(n,m,z)  从索引n开始,删除m个,把z添加到删除的位置;

    6、slice(n,m) 从索引n开始,查找到索引m处,不包含m,将查找到的以新数组返回,原数组不变;

    7、concat  数组的拼接,不改变数组,返回最终连接好的新数组;

    8、数组换为字符串:不改变原数组;

    五、数组的遍历:

    1、for  :不能遍历对象;

    2、for.....in:

      没有循环条件;

      自动取出下标;

      下标默认从0开始,最大下标为数组长度-1;

      下标的类型为string

    六、分类:

    整数数组、字符串数组、对象数组、二维数组

    七、数组排序:

    1、冒泡排序(相邻的两个数比较,大数下沉,小数上浮):

    function mySort(arr){
        for(var i=0;i<arr.length-1;i++){
             for(var j=0;j<arr.length-1;j++){
                  if(arr[i]>arr[j+1]){
                       var t=arr[i];
                        arr[j]=arr[j+1];
                       arr[j+1] = t;
                   }
              }
        }  
        return arr;
    
    }    

    2、选择排序:

    每一轮用数组中的第n个数和后面的数依次比较,如果arr[n]大于后面的数,就交换 n从下标为0开始 一直到arr.length-1;

    3、sort 方法排序:

        按照字符编码的顺序进行排序:

    八、数组新增的方法:

    1、indexOf():判断一个数在某个数组中是否存在,如果存在返回这个数在数组的位置,不存在返回-1;

    2、forEach() 遍历数组 没有返回值;

    3、map() 映射 遍历数组 --操作数组--返回数组

    4、filter 过滤 按照某个条件过滤,返回过滤后的数组;

    5、reduce()归并 返回值是最后一次操作的结果;

    6、some()返回一个boolean,判断是否有元素符合func条件,如果有一个元素符合,则循环终止;

    7、every() 返回一个boolean,判断每个元素是否符合func条件,有一个元素不满足,则循环终止,返回false。 

  • 相关阅读:
    11.28 正则表达式
    12.28jQuery 的取值赋值
    11.27 上传下载 图片预览
    11.28 验证控件
    12.23,repeater 分页显示
    12.23,搜索标记
    1.基础CRUD
    C#杀进程与之之子进程
    使用procedump捕获未处理异常的dump
    [.net core] 12.环境变量
  • 原文地址:https://www.cnblogs.com/21-forever/p/10871484.html
Copyright © 2020-2023  润新知