JavaScript 中的数组罕用于在单个变量中存储多个值。数组就是一组数据的汇合,在内存中体现为一段间断的内存地址(保留在堆内存)。创立数组的目标就是为了保留更多的数据。

数组概念和语法

概念:数组是一个非凡变量,一次能够包容多个值。

特点:有程序,有长度。

作用:应用独自的变量名来存储一系列的值。

语法如下所示:

var array_name = [item, item2, item3, ...];

其中 array_name 就是数组名,其实就是变量名,而数组中的元素全副是突围在中括号 [] 内,元素两头应用逗号分隔。数组中的元素能够是任意类型,类型能够是不同的。

创立数组

在 JavaScript 语言中,要创立一个数组,最罕用的形式,咱们能够应用字面量来创立。

示例:

创立一个简略的数组,数组名为:

var array1 = ["HTML", "VUE", "JAVASCRIPT", "CSS"];

代码中的空格和换行符并不是重要的,申明多个值时咱们还能够逾越多行:

var array2 = [    "HTML",    "VUE",    "JAVASCRIPT",    "CSS"];

除此之外,咱们还能够应用关键字 new 来创立数组:

var array3 = new Array();arrs[0] = 1;arrs[1] = 2;arrs[2] = 3;console.log(array3);// 输入:[ 1, 2, 3 ]

这种形式还有另一种简洁写法,就是间接在 Array 前面的小括号中增加值:

var array4 = new Array("xkd", "summer", "jack");console.log(array4);// 输入:[ 'xkd', 'summer', 'jack' ]

拜访数组

咱们能够通过数组名以及数组下标拜访数组中的元素。因为数组是有序的,因而它就会绝对应有本身的序号,而这个序号就是每个元素对应的下标(也叫做索引),数组的下标是从零开始,到数组长度减一完结 。比如说数组中第一个元素的索引为0、第二个为1、顺次类推。

示例:

拜访数组 name 中索引为 0 的元素的值,并输入这个值:

var username = ["Iven", "Eric", "Tony", "Hter", "John"];console.log("数组下标为0的字符输入后果为:" + username[0]);   // 输入:Iven

拜访数组中的最初一个元素,并输入这个值:

var name = ["Iven", "Eric", "Tony", "Hter", "John"];var last = name[name.length - 1];console.log(last);// 输入:John

数组长度

数组与字符串一样也有长度,咱们能够通过 length 属性获取数组的长度,数组的长度是指数组中寄存的元素个数。并且数组的长度始终大于数组的最高数索引。

示例:

别离定义一个字符串和数组,而后输入这个字符串和数组的长度:

var arr1 = '新版侠课岛行将推出';console.log("长度为:" + arr1.length);       // 长度为:9    var arr2 = ["Iven", "Eric", "Tony", "Hter", "John"];console.log("长度为:" + arr2.length);     // 长度为:5

数组取值和赋值

除了能够获取数组的长度,咱们还能够通过下标索引获取元素的值,格局为 数组名[下标]

示例:

例如咱们定义一个数组 arr,而后获取索引为 0、3 的地位所对应的值:

var arr = ["王语嫣", "段誉", "萧峰", "虚竹"];console.log(arr[0]);    // 王语嫣 console.log(arr[3]);    // 虚竹

因为下标的范畴是 0 到数组长度减一(arr.length-1),所以如果下标不存在,则会返回 undefined。

示例:

例如上述的数组 arr 下标最大值为 3,那么咱们获取下标为 4 的元素的值,则输入undefined:

console.log(arr[4]);    // undefined

咱们还能够通过 数组名[下标] = 值 的格局给数组赋值,而如果指定下标曾经有对应的值,则会把原来的值笼罩。

示例:

例如数组 arr2 中,下标为 5 的元素为 “殷离”,此时咱们应用 arr2[5] = "金毛狮王",则会笼罩 “殷离”的值:

var arr2 = ["周芷若", "赵敏", "张无忌", "宋青书", "灭绝师太", "殷离"];arr2[5] = "金毛狮王";  // 把 "殷离" 代替了"金毛狮王"

而如果元组中没有指定下标元素,则会给数组新增一个元素值:

arr2[6] = "杨不悔";  // 给数组新减少了一个 "杨不悔" 的值console.log(arr2);

在浏览器中,执行代码,输入扭转后的数组arr2

遍历数组元素

之前其实咱们学习循环的时候就讲过数组的遍历,遍历数组最罕用的就是 for 循环。

示例:

首先定义一个数组,而后通过 for 循环将数组以无序列表的模式遍历输入:

<!DOCTYPE html><html><head><meta charset="utf-8"><title>JS_侠课岛(9xkd.com)</title></head><body><div id = "xkd"></div><script>  var lst = ["Iven", "Eric", "Tony", "Hter", "John"];  name = "<ul>";  for(i=0; i<lst.length; i++){    name += "<li>" + lst[i] + "</li>";  }  name += "</ul>";  document.getElementById("xkd").innerHTML = name;</script></body>   </html>

在浏览器中关上:

上述代码中,咱们在 JavaScript 代码插入了 HTML 代码,使得数组 lst 在浏览器中的输入是一个无序列表的款式。

入手小练习

  1. 定义一个数组,别离输入数组的长度和多个下标值。
  2. 把1-100之间所有的奇数,放到数组中。
  3. 把1-100之间能被3整数的数字,存到数组中。
  4. 求一组数中的所有数的和以及其平均数。

链接:https://www.9xkd.com/