本文详细介绍JavaScript中数组对象的定义与作用,涵盖三种创建数组的方法(常规、简洁、字面量),讲解通过索引访问和修改数组元素的技巧,并演示如何利用原型(prototype)为数组添加自定义方法,如将元素转换为大写。
JavaScript数组基础与创建方法
数组对象的核心功能在于使用单一变量名来存储一组有序的值。
var mycars = new Array();
mycars[0] = "Saab";
mycars[1] = "Volvo";
mycars[2] = "BMW";
数组是一种数据结构,它允许开发者通过一个变量名来保存多个值。例如,若需存储一系列汽车名称,传统做法可能如下所示:
var car1="Saab";
var car2="Volvo";
var car3="BMW";
假设需要查询列表中的特定车辆,当数据量仅为3条时或许尚易处理,但若涉及300条数据,手动查找将变得极其困难。此时,数组成为最佳解决方案。数组允许将所有值存储在一个变量中,并通过索引轻松访问任意元素。每个元素均拥有独立的ID(索引),便于快速定位。创建数组主要有三种方式:第一种为常规方式,示例代码如下:
var myCars=new Array();
myCars[0]="Saab";
myCars[1]="Volvo";
myCars[2]="BMW";
第二种为简洁方式,示例代码如下:
var myCars=new Array("Saab","Volvo","BMW");
第三种为字面量方式,示例代码如下:
var myCars=["Saab","Volvo","BMW"];
数组元素的访问与修改
访问数组元素时,需指定数组名称及对应的索引号。以下示例展示了如何获取myCars数组中的第一个值:
var name=myCars[0];
若要修改数组中的元素,可通过索引直接赋值。以下示例演示了将myCars数组的第一个元素修改为"Opel":
myCars[0]="Opel";
在JavaScript数组中,索引从0开始,因此lamp[0]代表第一个元素,而[1]代表第二个元素。
数组的多类型存储与扩展方法
JavaScript中的变量本质上都是对象,数组元素、函数等亦不例外。因此,数组中可以混合存储不同类型的对象,包括对象实例、函数引用或其他数组。示例如下:
myArray[0]=Date.now;
myArray[1]=myFunction;
myArray[2]=myCars;
JavaScript数组提供了预定义的属性和方法,开发者可直接调用。例如:
var x=myCars.length // the number of elements in myCars
var y=myCars.indexOf("Volvo") // the index position of "Volvo"
除了内置方法,还可以利用JavaScript的全局构造函数Array.prototype来扩展数组的功能。以下示例演示如何定义一个新方法:
Array.prototype.ucase=function()
{
for (i=0;i<this.length;i++)
{this[i]=this[i].toUpperCase();}
}
上述代码定义了一个名为ucase的数组新方法,其功能是将数组中的所有字符串元素转换为大写形式。