数组是一种特殊的对象,数组是按照顺序排列的一组值(元素),每个位置都有一个编号,编号从0开始,编号也叫索引或者下标。数组可以存储任意数据类型。
一 、 创建数组方法
1.用[ ]
<script>
// 数字的长度 = 4 array[0] = a
var arry = ["a", "b", 110, 120];
console.log(array);
</script>
2.用函数去创建数组 Array
<script>
var arr1 = new Array(3); //只有一个值,值是创建数组的长度
console.log(arr1);
//值时一个非数组或者大于1个值,则是作为数组元素创建数组
var arr2 = new Array(3, 4);
console.log(arr2);
</script>
输出的结果
二、读取数组的值
1.使用方法:数组名 [下标 ] 下标从0开始编号。
<script>
var arr = ["a", "b", 10, 12];
console.log(arr[0]); //读取数组的第一位值
</script>
2.数组length属性
<script>
var arr = ["a", "b", 10, 12];
console.log(arr.length); //读取数组的长度
</script>
三、修改数组的值
1.通过[下标]给对应位置元素重新赋值
<script>
var arr = ["a", "b", 10, 12];
arr[0] = "李"; //更改数组第一位的值
console.log(arr); //读取数组的值
</script>
输出 --->
2.通过[下标]可以添加值,如果对应位置有元素则覆盖,没有对应元素,则是添加
<script>
var arr = ["a", "b", 10, 12];
arr[0] = "李"; //更改数组第一位的值
// 可以给任意的值赋值,跳过的位置则自动填充空位。一般按顺序添加
arr[5] = 35;
arr[6] = "ha";
console.log(arr); //读取数组的值
</script>
输出 --->
3.delete 删除数组元素,删除后对应位置会变空 一般不用该方法
<script>
var arr = ["a", "b", 10, 12];
arr[0] = "李"; //更改数组第一位的值
// 可以给任意的值赋值,跳过的位置则自动填充空位。一般按顺序添加
arr[4] = 35;
arr[5] = "ha";
delete arr[3]; //删除数组中的第4位数,所以显示空值
console.log(arr); //读取数组的值
</script>
输出为 --->
四、数组其他
1. [ ] in 数组 判断数组下标是否在数组里面 ,数组中有则显示true ,没有则显示false
<script>
var arr = ["a", "b", 10, 12];
arr[0] = "李"; //更改数组第一位的值
// 可以给任意的值赋值,跳过的位置则自动填充空位。一般按顺序添加
arr[4] = 35;
arr[5] = "ha";
delete arr[3]; //删除数组中的第4位数,所以显示空值
console.log(arr); //读取数组的值
console.log(2 in arr); //true
</script>
2. 遍历数组
1)for .... in 可以遍历数组,由于数组是有序号的特殊对象,用for...in 消耗较大,一般不用
<script>
var arr = ["a", "b", 10, 12];
for (var x in arr) {
// x是数组的下标
console.log(arr[x]);
}
</script>
2)for()循环遍历数组 常用遍历数组的方法
<script>
var arr = ["a", "b", 10, 12];
//i 为数组的下标值 arr.length为4位 因为用的小于号 所以不需要 -1
for (var i = 0 ;i < arr.length;i++) {
console.log(arr[i]);
}
</script>
3)判断元素是否在数组里面 方法比较原始 (不推荐)
<script>
var has = false;
var arr = ["a", "b", 10, 12];
//i 为数组的下标值 arr.length为4位 因为用的小于号 所以不需要 -1
for (var i = 0; i < arr.length; i++) {
if ("b2" === arr[i]) {
// 如果b2元素在数组中,则为true
has = true;
break;
}
}
if (has) {
console.log("该元素在数组中存在");
}
else {
console.log("该元素在数组中不存在");
}
</script>
4)Array.isArray( )判断是否是数据类型,是数组返回true,不是数组返回false
Array.isArray( 判断对象 )
<script>
var arr = ["a", "b", 10, 12];
console.log(Array.isArray(arr));
</script>
5).toString( ) 数组转为字符串
<script>
var has = false;
var arr = ["a", "b", 10, 12];
console.log(arr.toString); //把数组转为字符串
</script>
6)push( )在数组末尾追加一个元素,可以追加多个
基本语法: 数组名.push( )
<script>
var arr = ["a", "b", 10, 12];
arr.push("我是新增加的", "可以多个添加", "用逗号隔开");
console.log(arr);
</script>
7)pop()删除末尾最后一个元素,并返回删除的元素
基本语法: 数组名.pop( )
<script>
var arr = ["a", "b", 10, 12];
arr.push("我是新增加的", "可以多个添加", "用逗号隔开");
console.log(arr);
// 把删除的元素赋值给r
var r = arr.pop();
console.log(r);
</script>
8)unshift 在数组的开头插入一个或者多个元素
基本语法:数组名.unshift(插入元素)
<script>
var arr = ["a", "b", 10, 12];
arr.unshift("我是新增加的", "可以多个添加", "用逗号隔开");
console.log(arr);
</script>
9)shift( )删除头部的元素,并返回该元素
基本语法: var y = 数组名 .shift( )
<script>
var arr = ["a", "b", 10, 12];
arr.unshift("我是新增加的", "可以多个添加", "用逗号隔开");
console.log(arr);
// 把删除的元素赋值给r
var r = arr.shift();
console.log(r);
</script>