1、数组的定义
定义数组有两种常用的方式:1、字面量定义数组,2、使用new关键字定义数组
1、字面量定义数组如下:
<script>
var arr = (1,2,3,[4,5,6],{}); //其中数组元素可以是number,string,object
console.log(arr);//在控制台输出数组
</script>
2、使用new关键字定义数组如下:
<script>
var arr = new Array[1,2,3,[4,5,6],{}];
console.log(arr);
3、注意事项:
使用new定义数组时,如果定义为:var arr = new Array(n);则表示定义的是数组长度为n的数组,如果为空值,则表示定义了一个空数组。
2、数组的操作
对数组常见的操作有:添加数组元素,删除数组元素,修改数组元素,遍历数组元素
1、添加数组元素如下:
方法1:
<script>
var arr = [1,2,3,4,"A"];
arr[5] = "M"; //如果为数组元素赋值的索引i大于数组长度,则添加数组元素后的数组长度为 i+1
console.log(arr);
</script>
方法2:使用push()方法;
<script>
var arr = [1,2,3,4,"A"];
arr.push("BB","cc");//在数组元素的后面添加,可以追加多个元素,
console.log(arr);
</script>
方法3:使用unshift()方法;
<script>
var arr = [1,2,3,4,"A"];
arr.unshift("BB","cc");//在数组元素的前面添加,可以追加多个元素,
console.log(arr);
</script>
2、删除数组元素:
方法1:使用pop()方法,删除最后一个数组元素;
<script>
var arr = ["A", "B", "C", "D"];
arr.pop(); //删除最后一个元素,没有参数,每次只能删除一个
console.log(arr);
</script>
方法2:使用shift()方法,删除第一个元素
<script>
var arr = ["A", "B", "C", "D"];
arr.shift(); //删除第一个数组元素,没有参数,每次只能删除一个
console.log(arr);
</script>
3、修改数组
<script>
var arr = ["A", "B", "C", "D"];
arr[2] = "E";
console.log(arr);
</script>
4、遍历一维数组
<script>
var arr = ["A", "B", "C", "D"];
console.log(arr.length);
for(var i = 0; i<arr.length;i++){
console.log(arr[i]);
}
</script>
5、遍历二维数组
<script>
var arr = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
for(var i = 0;i<arr.length;i++){ //先遍历arr
for(var j = 0;j<arr[i].length;j++){ //遍历arr元素中的数组元素
console.log(arr[i][j]);
}
}
</script>
3、数组中常见的方法
1、join():将数组中的元素,使用某种符号连接起来,形成一个字符串
<script>
var arr = ["A","B","C","D"]
var a = arr.join("*")
console.log( a);
var a = arr.join("+")
console.log( a);
var a = arr.join("-")
console.log( a);
var a = arr.join("/")
console.log(a);
console.log(typeof a);
</script>
2、reverse():将数组中的元素倒置顺序;
<script>
var arr = ["A","B","C","D"]
var a = arr.reverse(); //倒置数组顺序
for(var i = 0; i< arr.length; i++) //遍历数组
{
console.log(a[i]);
}
</script>
3、concat() :将多个数组拼接成一个数组,其中的多维数组是不会展开的
<script>
var arr = ["A","B","C","D"];
var arr1 = ["A","B","C","D"];
var arr2 = ["A","B","C","D"];
var arr3 = ["A","B","C","D" ,[1,2,3]];
var a = arr.concat(arr1,arr2,arr3) //concat将多个数组拼接成一个数组,其中的多维数组是不会展开的
console.log(a);
console.log(typeof a)
</script>
4、sort():将数组中的元素按照ASCII从小到大排序
<script>
var arr = ["d","AbC","AaC","D",1,8,6];
var a = arr.sort(); //sort是单个字符比较 例如AbD和AaC 先比较第一个字母,在比较第二个字母,第二个字母那个小就排在前面,之后就不比较后面的字母大小了
console.log(a);
</script>
5、slice():截取数组中的元素;
<script>
var arr = ["A","B","C","D"];
var a = arr.slice(1,3); //截取的元素包括开始截取的元素,但是不包括最后截取的元素
console.log(a);
var a = arr.slice(1); //只写一个则表示截取到最后一个元素
console.log(a);
</script>
6、toString():将数组转换成字符串类型
<script>
var arr = ["A","B","C","D"];
var a = arr.toString();
console.log(a);
console.log(typeof a);
</script>