数组的定义和创建
数组,顾名思义就是将一堆数据定义为统一的名字,在日常开发的过程中,使用数组方便数据的编译和维护。
假设我们有如下数据
var car1 = "BMW";
var car2 = "Tesla";
var car3 = "Volvo";
在此时存在多个相同名字的数据,那么我们就是可以使用数据来存储,创建一个数组有三种方法:
var car = ["BMW","Tesla","Volvo"];
var car = new Array("BMW","Tesla","Volvo");
var car = new Array();
car[0] = "BMW";
car[1] = "Tesla";
car[2] = "Volvo";
数组的访问
数组创建完成了那么接下来就是数组访问了,数组的访问是通过下标的索引来访问的;
数组的下标索引通常从0
开始,car[0]
访问的是数组第一位上的数据"BMW
";
当然数组在定义的时候也可以使用关联数组,如下:
var car = new Array();
car["BMW"] = "BMW";
car["Tesla"] = "Tesla";
car["Volvo"] = "Volvo";
此时在访问的时候访问car["BMW"]
是数组中名称为"BMW
“的数据”BMW
";
数组的修改
数据是可以进行修改的,在通常变量的存储中,修改数据即将变量进行重新赋值,那么在数组中的数组是怎么修改的呢?
arr[1] = "newBMW";
修改前arr[1]
值为"BMW
",修改后值为"newBMW
";
数组的方法
数组Array是一个对象,那么会存在哪些常用方法呢?
方法 | 描述 |
---|---|
concat() | 连接两个或者两个以上的数组,并放回结果 |
join() | 将数组所有元素放入一个字符串 |
shift() | 删除数组第一个元素,并返回第一个元素 |
unshift() | 在数组开头添加元素 |
push() | 在数组后面追加元素 |
pop() | 删除数组最后一个元素 |
*字符串本质就是数组,字符串使用的方法数组一样适用。
数组可以随意修改原数组,而字符串的只读原则,一经创建内容不可改变。
concat()
:连接两个或者两个以上的数组,并放回结果
var arr1 = [1,2,3];
var arr2 = [4,5,6];
console.log(arr1.concat(arr2));
将arr1
和arr2
连接,输出结果为:[1, 2, 3, 4, 5, 6]
join()
:将数组所有元素放入一个字符串
var arr = [1,2,3];
console.log(arr.join());
将arr
中的值用,分割拼接起来,返回字符串。
可自定义拼接符号
arr.join("-");
无缝连接
arr.join("");
shift()
:删除数组的第一个元素,且返回删除的元素
var arr = [1,2,3];
console.log(arr.shift());
console.log(arr);
第一次输出返回 1
第二次输出返回[2,3]
unshift()
:在数组开头追加元素
var arr = [1,2,3];
arr.unshift(0)
console.log(arr);
在arr
前面追加0
,输出[0, 1, 2, 3]
push() :在数组后面追加元素
var arr = [1,2,3];
arr.push(4);
console.log(arr);
在arr
数组后面追加4
,输出[1,2,3,4]
pop()
:删除数组中的最后一个元素
var arr = [1,2,3];
arr.pop();
console.log(arr);
删除arr
数组数据3
的值,输出[1,2]
length
属性:获取数组元素的个数
var arr = [1,2,3];
console.log(arr.length);
输出数组的个数 3
删除数组的最后一个元素
array.length--;
删掉数组末尾的n个元素
array.length = array.length-n;
二维数组的创建
数组的值可以是字符串,数字,也可以是数组,这就是我们的二维数组,如下
var arr = new Array();
arr[0] = new Array();
arr[0][0] = "1";
arr[0][1] = "2";