一.数组是用于在单个的变量中存储多个值。
二.定义数组的两个方法:
方法一:
var arr1 = [];//创建一个空数组
var arr3 = [1,2,3,4];//创建有4个元素的方法
方法二:
var arr1 = new Array();//创建一个空数组
var arr2 = new Array(10);//创建长度位10的数组
var arr3 = new Array(1,2,3,4,);//创建一个包含4个元素的数组
三.获取数组的值和长度
var arr = [1,2,3,4];//定义一个有4个值得数组
console.log(arr[i]);//使用下标可获取每个元素的值(数组的下标都是从0开始的,上面的那个数组的下标也是从0开始的,1的下标为0...4的下标为3)
arr[i] = 5;//可直接更改某个元素的值
console.log(arr.length);//打点调用length方法可一获取数组的长度
四.数组的API
方法 | 描述 |
---|---|
concat() | 连接两个或更多的数组,并返回结果。 |
join() | 把数组的所有元素放入一个字符串。元素通过指定的分隔符进行分隔。 |
pop() | 删除并返回数组的最后一个元素 |
push() | 向数组的末尾添加一个或更多元素,并返回新的长度。 |
reverse() | 颠倒数组中元素的顺序。 |
shift() | 删除并返回数组的第一个元素 |
slice() | 从某个已有的数组返回选定的元素。 |
sort() | 对数组的元素进行排序。 |
splice() | 删除元素,并向数组添加新元素。 |
toSource() | 返回该对象的源代码。 |
toString() | 把数组转换为字符串,并返回结果。 |
toLocaleString() | 把数组转换为本地数组,并返回结果。 |
unshift() | 向数组的开头添加一个或更多元素,并返回新的长度。 |
valueOf() | 返回数组对象的原始值 。 |
五.举例说明
我在这里举几个常用的API例子:
splice()
// arr.splice(开始下标,删除的个数, 插入的值...) 会修改原数组
var arr = [1,2,3,4,5,6];
// 删除 返回值被删除的元素组成的临时子数组
arr.slice(3,5);//截取数组中的元素,不会修改原数组
var delSub = arr.splice(4,2);
// 支持负数参数 arr.splice(-2,1) 删掉倒数第二个元素
// 插入 第二个参数写0 表示一个都不删除,返回值:[]
// [1,2,3,4]
// 0 1 2 3
var result = arr.splice(2,0,'aa','bb');//starti 将插入的数据放置的下标位置 原位置的值,向后顺移
console.log(result);
console.log(arr);
var arr1 = [1,2,3];
var arr2 = [123,456];
arr1.splice(3,0,arr2);//参数为数组的是,不会打散数组,整个子数组保存在一个元素中
console.log(arr1);
注意:替换就是删除和插入的结合,必须先删除在插入
// 替换 插入的元素个数必须要和删除的元素个数相等
result = arr.splice(2,2,'cc','dd','ff');
console.log(result);//['aa','bb']
console.log(arr);//[1,2,'cc','dd',3,4]
arr1.splice(2,1,['ss','vvv']);
console.log(arr1);
push()数组末尾追加元素
var arr = [1,2,3];
// 数组末尾追加元素
var result = arr.push(4);//返回的是数组的长度
console.log(result)
console.log(arr);
result = arr.push(10,20);//在末尾添加多个元素时,返回的是数组的长度
arr.push(['a','b']);// 将一个子数组添加到了原数组中,且不打散的添加 返回值是原数组的长度
pop()将数组末尾的元素删除
// 将数组末尾的元素删除
result = arr.pop();
console.log(result)
console.log(arr);
unshift()数组的开头添加一个元素
// 数组的开头添加一个元素
result = arr.unshift('000');//返回值数组的长度
console.log(result)
console.log(arr);
shift()删除数组开头的元素 返回值是被删除的元素
// 删除数组开头的元素 返回值是被删除的元素
result = arr.shift();
console.log(result)
console.log(arr);