资讯专栏INFORMATION COLUMN

JavaScript核心语法——数组

Youngdze / 2595人阅读

摘要:实际测试的结果表示,这中数组在语言中是可以使用的。数组元素的读取数组的主要作用是用于存储和读取数据信息。第一个索引值表示外层数组的,第二个索引值表示内部数组的。

数组 数组是什么 数组的概念

数组是值的有序集合,数组中的每一个值叫做 一个元素,而每个元素在数组中都有一个唯一的位置。这个位置用数字表示,叫做索引数组,用字符串表示叫做关联数组。
JavaScript数组是无类型的,数组的元素可以是任何类型。比如字符串、数字值、布尔值等。而且每个数组中的不同元素可能是不同类型。
JavaScript数组是动态的,根据需要可以动态的向数组插入新的元素,或者从数组中删除指定的元素。

一维数组 定义数组

数组的最大作用就是用于存储多个值。在一个数组中的不同元素可以使不同数据类型。
虽然数组具有字面量方式的定义,但是与原始类型的字面量方式的定义不同。

有以下三种方式;

   1.字面量/直接量方式定义
      var 数组名称 = [元素一, 元素二, ...]
  
var arr1 = [];// 定义一个空数组
var arr2 = [100, "卧龙学苑", true, undefined];
var arr6 = [10];

console.log(arr6);


    2.构造函数方式
      var 数组名称 = new Array(元素一, 元素二, ...)
      var 数组名称 = new Array(length)
      * length - number类型,表示数组的长度(存在元素的个数)
 
var arr3 = new Array();// 定义一个空数组
var arr4 = new Array(100, "卧龙学苑", true, undefined);
console.log(arr4);

var arr5 = new Array(10);
console.log(arr5);


    3.函数方式定义
      var 数组名称 = Array(元素一, 元素二, ...)
      var 数组名称 = Array(length)
      * length - number类型,表示数组的长度(存在元素的个数)

var arr7 = Array();// 定义一个空数组
var arr8 = Array(100, "卧龙学苑", true, undefined);
var arr9 = Array(10);
console.log(arr9);
索引数组

索引数组表示数组中元素的位置使用数字值来表示的,一般称之为角标或下标,数组的长度与元素的个数是一致的。

var arr = [];// 定义一个空数组
arr[0] = "卧龙学苑";索引数组的下标是从0开始的
arr[1] = true;

console.log(arr.length);
关联数组

关联数组是存储元素的位置使用字符串来表示,一般称之为(name或key)。

  关联数组 - 表示数组中元素的位置使用字符串来表示的
     注意:关联数组的数组长度与元素的个数不一致
     原因:JavaScript的官方不支持关联数组的
 
var arr = [];// 定义一个空数组
arr["name"] = "张无忌";
arr["age"] = 19;
arr["job"] = "教主";
// 输出的结果:[ name: "张无忌", age: 19, job: "教主" ]
console.log(arr.length);

关联数组这个概念,并不属于ECMASCRIPT5这个版本的标准规范内容。实际测试的结果表示,这中数组在JavaScript语言中是可以使用的。
注意;关联数组的名称(name或key)是字符串,必须使用单引号或双引号将他包裹。

稀疏数组

稀疏数组就是包含0开始的不连续索引的数组

   索引数组的位置允许不连续的 - 没有定义元素的位置默认为空(undefined)
     稀疏数组 - 数组的长度与元素的个数不一致的
 
var arr = [];
arr[0] = "张无忌";
arr[3] = 19;
arr[5] = "教主";

console.log(arr.length);


    得到undefined值的几种方式:
    1.定义变量,但未初始化值
    2.定义变量,并初始化值为 undefined
    3.访问数组中未定义的位置的元素值(默认为undefined)
 

// 将稀疏数组进行处理,得到正常的索引数组
var newArr = [];
for (var i=0; i
数组的长度

每个数组都有一个length属性,表示数组的长度,上面代码中也有提到。

数组元素的读取

数组的主要作用是用于存储和读取数据信息。

// 定义数组的默认为索引数组
var arr = ["卧龙学苑",100,null];
// 调用数组名称时,得到只是存储所有元素数据的集合
console.log(arr);
// 访问索引数组中的元素 -> 数组名称[索引值]
console.log(arr[0]);
// 如果访问了数组中未定义的位置的元素时 - 语法不抱错,结果为 undefined
console.log(arr[5]);
// 索引数组中索引值最大为 arr.length - 1

// JavaScript中的关联数组定义与访问都是没有问题的
var arr1 = [];
arr1["name"] = "张三";
arr1["age"] = 19;
arr1["job"] = "强盗";

console.log(arr1["name"]);
数组元素的修改

数组元素的修改不仅可以从数组中读取指定的元素,还可以根据需求修改数组中指定的元素值。

 索引数组
var arr1 = [];
arr1[0] = "卧龙学苑";
arr1[1] = true;
 关联数组
var arr2 = [];
arr2["name"] = "张无忌";
arr2["age"] = 19;
arr2["job"] = "教主";
通过数组的索引值找到对应元素的位置,再通过重新赋值的操作进行修改
arr1[0] = 100;
console.log(arr1);

arr2["name"] = "周芷若";
console.log(arr2);
如果索引值是新的,就是新增数组的元素操作
arr1[4] = "wolongxueyuan";
console.log(arr1);
数组元素的删除

数组元素的删除不仅可以根据需求修改数组中指定的元素值,也可以删除数组中指定的元素值。数组删除指定元素值可以使用delete关键字。

 索引数组
var arr1 = [];
arr1[0] = "wolongxueyuan";
arr1[1] = true;
 关联数组
var arr2 = [];
arr2["name"] = "张无忌";
arr2["age"] = 19;
arr2["job"] = "教主";


    使用 delete 运算符进行删除数组的元素
     注意 - 只是删除元素的数据内容,而对应的位置被保留 -> 稀疏数组
  
delete arr1[0];
console.log(arr1);
for...in语句

在ECMAScript中新增的for...in语句,同样也可以用在遍历数组。
for...in语句还可以用在遍历稀疏数组,循环的每次将一个有效元素返回。
代码示例

var arr = ["卧龙学苑", 100, true, undefined];

    for (var 变量 in 数组) {
        语句块
    }
     变量 - 得到的是数组的索引值
 
for (var i in arr) {
    console.log(arr[i]);
}

     for语句
       循环的开始和结束,都是由程序员决定的
     for..in语句
       循环只能从开始到结束
 
for (var i=0; i

第二种表达方式;

 关联数组的length属性为 0
var arr1 = [];
arr1["name"] = "张无忌";
arr1["age"] = 19;
arr1["job"] = "教主";

for (var i=0; i
二维数组

数组是可以嵌套的,这就意味着一个数组可以作为一个元素被包含在另一个数组里面。
代码示例

var arr = [];// 定义一个空数组
arr[0] = [100,200,300];
arr[1] = [400,500,600];
arr[2] = [700,800,900];

 console.log(arr);
 访问二维数组中的元素
var result = arr[0];
/*console.log(result[0]);

console.log(arr[0][0]);*/

 循环遍历二维数组
for (var i=0; i

定义二维数组
定义一个规整的二维数组就是指外层数组的元素的内部数据中元素的个数是一致的。
如果定义一个不规整的二维数组,所谓的不规整的二维数组,就是指作为外层数组的元素的内部数据中元素的个数是不一致的。
操作二维数组中的具体元素,读取二维数组中真正的元素内容,需要连续会用两个索引值才能实现。第一个索引值表示外层数组的,第二个索引值表示内部数组的。

var arr = [];// 定义一个空数组
arr[0] = [100,200,300];
arr[1] = [400,500,600];
arr[2] = [700,800,900];

 console.log(arr);
 访问二维数组中的元素
var result = arr[0];
console.log(result[0]);

console.log(arr[0][0]);*/

 循环遍历二维数组
for (var i=0; i           
               
                                           
                       
                 

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/96787.html

相关文章

  • 数组 - Javascript语法基础 - Javascript核心

    摘要:数组创建数组数组字面量使用构造函数数组本质上是所以要判断是不是数组,需要通过判断。数组长度使用属性获取元素的个数。例如函数的对象就是这样 原文: http://pij.robinqu.me/JavaScript_Core/JavaScript_Basics/Array.html 源代码: https://github.com/RobinQu/Programing-In-...

    molyzzx 评论0 收藏0
  • JavaScript核心语法数组

    摘要:数组一数组是什么是值得有序集合,每个元素都在数组里有唯一的位置,用数字表示,叫做索引数据用字符串表示,叫关联数组。 JS(JavaScript) 数组; 一.数组是什么; 是值得有序集合,每个元素都在数组里有唯一的位置,用数字表示,叫做索引数据;用字符串表示,叫关联数组。数组无类型;数组元素可以是类型,字符串,数字值,布尔值等数组动态的;向插入新元素,从数组中删除指定元素 二.一维数组...

    ghnor 评论0 收藏0
  • JavaScript核心语法 [ 数组 ]

    摘要:数组描述表示可以储存一个或多个数据值的有序集合数组中储存的数据中可以称为元素数组中可以储存任何类型的数据语法字面量方式数组名称元素,元素,构造函数方式数组名称元素元素函数方式数组名称元素元素长度表示数组的长度数组中储存元素的个数当使用 数组 描述 表示可以储存一个或多个数据值的有序集合 数组中储存的数据中可以称为元素 数组中可以储存任何类型的数据 语法 字面量方式 - var 数...

    mumumu 评论0 收藏0
  • Javascript语句 - Javascript语法基础 - Javascript核心

    摘要:多数运算符都是由标点符号表示,比如和。通常会根据需要对操作数进行类型转换左值是一个古老的属于,它是指表达式只能出现在赋值运算符的左侧。也称为严格相等运算符,它用来检测两个操作数是否严格相等。运算符的检测规则是和运算符的求反。 源代码: https://github.com/RobinQu/Programing-In-Javascript/blob/master/chapters/...

    lavnFan 评论0 收藏0
  • JavaScript 闯关记

    摘要:对象数组初始化表达式,闯关记之上文档对象模型是针对和文档的一个。闯关记之数组数组是值的有序集合。数组是动态的,根闯关记之语法的语法大量借鉴了及其他类语言如和的语法。 《JavaScript 闯关记》之 DOM(下) Element 类型 除了 Document 类型之外,Element 类型就要算是 Web 编程中最常用的类型了。Element 类型用于表现 XML 或 HTML 元素...

    mj 评论0 收藏0

发表评论

0条评论

Youngdze

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<