资讯专栏INFORMATION COLUMN

【JavaScript】核心语法之数组

ghnor / 785人阅读

摘要:数组一数组是什么是值得有序集合,每个元素都在数组里有唯一的位置,用数字表示,叫做索引数据用字符串表示,叫关联数组。

JS(JavaScript)

数组; 一.数组是什么;

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

二.一维数组;

1.定义数组;

字面量/直接量方式定义
var 数组名称 = [元素一, 元素二, ...]

构造函数方式
var 数组名称 = new Array(元素一, 元素二, ...)
var 数组名称 = new Array(length)

length - number类型,表示数组的长度(存在元素的个数)

函数方式定义
var 数组名称 = Array(元素一, 元素二, ...)
var 数组名称 = Array(length)

length - number类型,表示数组的长度(存在元素的个数)

    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);

2.索引数组;

就是存储元素的位置并以数字值来表示,数字值从0开始,一般称为索引值
/*

索引数组 - 表示数组中元素的位置使用数字值来表示的
* 数字值表示元素的位置 -> 角标或下标
* 数组的长度与元素的个数是一致的

*/
var arr = [];// 定义一个空数组
arr[0] = "爱新觉罗";
arr[1] = true;

console.log(arr.length);

 3.关联数组;

存储元素的位置使用字符串来表示

/*

关联数组 - 表示数组中元素的位置使用字符串来表示的
* 注意:关联数组的数组长度与元素的个数不一致
* 原因:JavaScript的官方不支持关联数组的

*/
var arr = [];// 定义一个空数组
arr["name"] = "张无忌";
arr["age"] = 19;
arr["job"] = "教主";
// 输出的结果:[ name: "张无忌", age: 19, job: "教主" ]
console.log(arr.length);

 4.稀疏数组;

包含0开始的不连续索引的数组

var arr = [];
arr2[0] = "犬夜叉";
arr2[3] = 16;
arr2[5] = "半妖";
/*索引数组的位置允许不连续;没有定义元素的位置默认为空(undefined)

* 稀疏数组;数组的长度与元素的个数不一致的*/

console.log(arr.length);
var newArr = [];
for (var i=0; i

// 比较当前值是否等于 undefined
if (arr[i] !== undefined) {
    newArr.push(arr[i]);
}

}
console.log(newArr);


 5.数组的长度;

以length属性,用来表示指定数组的长度和个数
 6.数组元素的读取;

用于存储和读取数据信息

var arr = ["爱新觉罗",100,null];
console.log(arr);
//调用数组名称,得到只是存储所有元素数值的集合
console.log(arr[0]);
//访问索引数组中的元素;数组名称[索引值]
console.log(arr[5]);
//如果访问了数组中未定义位置的冤死时;语法不报错,结果是 undefined
//索引数组中索引值最大为 arr.length;1

//JS(JavaScript)中关联数组定义,访问都没有问题
var arr1 = [];
arr1["name"] = "犬夜叉";
arr1["age"] = 16;
arr1["job"] = "半妖";
console.log(arr1["name"]);

 7.数组元素的修改;

可读取指定元素,并进行修改数组中指定元素值

var arr1 = [];
arr1[0] = "爱新觉罗";
arr1[1] = true;

var arr2 = [];
arr2["name"] = "犬夜叉";
arr2["age"] = 16;
arr2["job"] = "半妖";
arr1[0] = 100;
console.log(arr1);

arr2["name"] = "杀生丸";
console.log(arr2);
//通过数字索引值到对应元素的位置,再通过重新赋值操作进行修改
arr1[4] = "爱新觉罗";
console.log(arr1);
//如果索引值是新的,就是新增数组的元素操作

 8.数组元素的删除;

使用delete关键字竞秀删除数组中指定的元素值

var arr1 = [];
arr1[0] = "爱新觉罗";
arr2[1] = true;

var arr2 = [];
arr2["name"] = "犬夜叉";
arr2["age"] = 16;
arr2["job"] = "半妖";

delete arr1[0];
console.log(arr1);
/*使用delete运算符进行删除数组元素

只是删除元素数据内容,而对应位置被保留;稀疏数组
*/

 9.遍历数组元素;

通常使用循环语句获取数组的数据

var arr = ["爱新觉罗",100,true,undefined];
/*var i = 0;
while (i < arr.length){

  console.log(arr[i]);

  i++;

}
//while语句
var i = 0;
do {

console.log(arr[i]);

i++;

} while (i < arr.length);
//do...while语句*/
for (var i=0; i

console.log(arr[i]);

}
//for语句

10.for...in语句

可以用来遍历稀疏数组,循环每次一有效元素返回,不存在索引不会遍历到

// 关联数组的length属性为 0
var arr1 = [];
arr1["name"] = "犬夜叉";
arr1["age"] = 16;
arr1["job"] = "半妖";

/*for (var i=0; i
三.二维数组;

1.二维数组是什么;

可以嵌套,表示在一个数组可以以一个元素包裹在另一个数组里面
2.定义二维数组;

为规整和不规整的二维数组,是指外层数组元素内部数据元素的个数是一致还有不一样的
3.使用二维数组;

获取二维数组,中元素内容,使用练习需要连续2个索引值一个表示外层索引值一个内部索引值

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/96776.html

相关文章

  • JavaScript 闯关记

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

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

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

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

    摘要:在定义函数的作用域外调用,得到的返回仍然是函数创建时所在的作用域的局部变量。这是因为所在的匿名函数的闭包中存放的是第一行的,而不是在循环中获得的的当前值。 原文: http://pij.robinqu.me/JavaScript_Core/JavaScript_Basics/Function.html 源代码: https://github.com/RobinQu/Pr...

    wuaiqiu 评论0 收藏0
  • 数组 - Javascript语法基础 - Javascript核心

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

    molyzzx 评论0 收藏0
  • JavaScript 闯关记》对象

    摘要:属性名可以是包含空字符串在内的任意字符串,但对象中不能存在两个同名的属性。客户端中表示网页结构的对象均是宿主对象。这里的函数称做构造函数,构造函数用以初始化一个新创建的对象。通过关键字和构造函数调用创建的对象的原型就是构造函数的属性的值。 对象是 JavaScript 的数据类型。它将很多值(原始值或者其他对象)聚合在一起,可通过名字访问这些值,因此我们可以把它看成是从字符串到值的映射...

    rozbo 评论0 收藏0

发表评论

0条评论

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