JavaSrprit的数组
1.数组定义,数组的创建
数组的概念
所谓数组,就是将多个元素(通常是同一类型)按一定顺序排列放到一个集合中,那么这个集合 我们就称之为数组。
数组的定义
数组是一个有序的列表,可以在数组中存放任意的数据,并且数组的长度可以动态的调整。
数组的创建
1.通过数组字面量创建数组
// 创建一个空数组
var arr1 = [];
// 创建一个包含3个数值的数组,多个数组项以逗号隔开
var arr2 = [1, 3, 4];
// 创建一个包含2个字符串的数组
var arr3 = ['a', 'b']; // 可以通过数组的length属性获取数组的长度
console.log(arr3.length);
// 可以设置length属性改变数组中元素的个数
arr3.length = 0;
2.通过构造函数Array()创建数组
//调用时没有参数:
var a = new Array(); //该方法创建一个没有任何元素的空数组,等同于数组直接量[]。//调用时有一个数值参数,它指定长度:
var a = new Array(10) // 预先分配空间
//当预先知道所需元素个数时,这种形式的Array()构造函数可以用来预分配一个数组空间。//显示指定一个或多个数组元素或者数组的一个非数值元素:
var a = new Array(5,4,3,2,1,“test”);
//以这种形式,构造函数的参数将会成为新数组的元素。使用数组字面量比这样使用Array()构造函数要简单 多了。
数组的特点
a) 数组是值的有序集合
b) 数组是无类型。数组元素可以是任意类型,并且同一个数组的不同元素也可能有不同的类型
c) 每个值叫做一个元素,而每个元素在数组中有一个位置
2.数组元素的读和写
数组的下标
// 格式:数组名[下标] 下标又称索引
// 功能:获取数组对应下标的那个值,如果下标不存在,则返回undefined。
var arr = ['red', 'green', 'blue'];
arr[0]; // red
arr[2]; // blue
arr[3]; // 这个数组的最大下标为2,因此返回undefined
读:数组名[下标]
注意:这里下标是从0 开始的。
写:数组名[下标] = 值
注意:如果声明的长度大于写的下标,则正常写入,但是长度会发生变化。
3.数组长长度
//格式:数组名.lengthvar arr = ['a', 'b'];
arr.length // 2arr[2] = 'c';
arr.length // 3arr[9] = 'd';
arr.length // 10arr[1000] = 'e';
arr.length // 1001
4.数组中常用的方法
1 push(), pop()方法使用
push() 方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度.
```javascript
var arr = ["张三", "李四"];
var result = arr.push("王五", "赵六");
console.log(arr); // ["张三", "李四", "王五", "赵六"]
console.log(result); // 4
pop() 方法从数组中删除后一个元素,并返回该元素的值。此方法更改数组的长度。
var arr = ["张三", "李四", "王五", "赵六"];
var result = arr.pop();//括号里边不用传参数
console.log(arr); // ["张三", "李四", "王五"]
console.log(result); // 赵六
2 shift(),unshift()方法使用
shift() 方法从数组中删除第一个元素,并返回该元素的值。此方法更改数组的长度。
var arr = ['张三', '李四', '王五', '赵六'];
var result = arr.shift();//括号里边不用传参数
console.log(arr);// ["李四", "王五", "赵六"]
console.log(result);// angel
unshift() 方法将一个或多个元素添加到数组的开头,并返回该数组的新长度。
var arr = ["soccer", "baseball"]; var result = arr.unshift("football", "swimming");
console.log(arr); // ["football", "swimming", "soccer", "baseball"] console.log(result); // 4
3 join(), reverse()方法使用
join() 方法将一个数组的所有元素连接成一个字符串并返回这个字符串。
var elements = ['Fire', 'Air', 'Water'];
console.log(elements.join(""));// "Fire,Air,Water" console.log(elements.join("|"));//"FireAirWater"
console.log(elements.join("-"));// "Fire-Air-Water"
reverse() 方法将数组中元素的位置颠倒,并返回该数组。该方法会改变原数组。
var arr = ['one', 'two', 'three'];
arr.reverse();
console.log(arr) // ['three', 'two', 'one']