• JavaScript 数组(一)数组基础


    一、数组

      1、概述

        数组 就是将多个元素按一定顺序排放到一个集合中,那么这个集合称之为数组。

        数组 也是一种数据类型,属于复杂数据类型(Object)。

      2、特点

      •   存放的元素有序的。
      •      可以存放不同的数据类型,但是不推荐这么做。
      •      数组的长度可以动态的调整。

    二、数组的定义

      1、定义空数组

    var arr1 = []; 
    

       分析:这种方式定义的数组是一个没有任何元素的空数组。

      2、定义数组字面量

    var arr2 = [1, 3, 4]; 
    

       分析:使用中括号运算符定义的数组称为数组直接量(数组字面量),里面包含3个数值的数组,数组项以逗号隔开。

      3、使用 Array() 构造函数和 new 运算符

    var arr1 = new  Array();           // 定义一个空数组,同上面第一种方式
    var arr2 = new  Array(1,3,4);      // 定义一个有参数的数组,同上面第二种方式
    

        分析:使用数组字面量创建数组要比使用 Array()函数定义数组速度更快,操作更方便。

      4、定义指定长度的数组

    var arr3 = new  Array(6);  
    var arr3 = Array(6);             // 不使用 new 运算符,两者效果相同
    

        分析:采用这种方式可以创建指定长度的数组,但是没有为元素初始化赋值,这时它们的初始值都是 undefined。

          定义数组时,可以省略 new 运算符,直接使用 Array() 函数来实现。

    三、数组的操作

      1、访问数组中的数据

        使用索引下标的方式,能够访问数组中的每一项。

        语法格式

    数组名[下标];            
    

          注意

        •  数组的下标是从 0 开始的。
        •     如果数组没有对应的下标元素,则返回 undefined。
        •     获取到的数组元素相当于一个变量,是可以重新赋值的。

      2、获取数组的长度

        数组的长度即数组中元素的个数,使用 length 属性可以得到。

        语法格式:

    var length = 数组名.length;
    

         扩展

        •  通过 length 能轻松获取数组最后一项。即 数组名[数组名.length-1] 就是数组最后一项。

      3、动态改变数组的长度

         数组的长度是可以动态改变的,因此使得数组用法更加灵活。

        a、给数组添加项

        语法格式:

    数组名[下标] =  value;
    

         注意

        •   如果有下标对应的值,会用新值把原来的值覆盖;
        •      如果下标不存在,会给数组新增一个元素;
        •      如果新增的下标与原来的并不连续,则会在跳过下标的位置自动补上 undefined。

        b、通过 length 属性

        语法格式:

    数组名.length = value;         //  value 应该 大于等于 0
    

          注意

        •   如果 value 大于现在数组的长度,则扩充数组的长度,其他值用 undefined 补上。
        •      如果 value 小于现在数组的长度,则截取指定长度的数组,其他元素舍去。
        •      如果 value 为 0 ,则清空数组,变为空数组。

      4、遍历数组

        a、正向遍历

          语法格式:

    for (var i = 0; i < names.length; i++) {
          console.log(names[i]);
    }

        b、反向遍历

          语法格式:

    for (var i = names.length - 1; i >= 0; i--) {
          console.log(names[i]);
     }
    

      

      

  • 相关阅读:
    contest9 CF295 div1 ooxx? ooox? oooo?
    The 8KB bug
    简单消息框架
    示例页面
    Unity3d中角色模型和角色名字保持相对位置
    Unityd外发光Shader Lab
    Unity3D判断当前所在平台
    Unity3D中的shader基础知识
    Sql Server 分区
    MVC 使用缓存
  • 原文地址:https://www.cnblogs.com/niujifei/p/11320113.html
Copyright © 2020-2023  润新知