数组 Array
- 一列就是一个数组,一个数组里面有很多个元素
- 数组:一组数据(一个变量来承载)
1、字面量的方式声明数组
var arr = [3,4,5,6,7]
console.log(arr)
console.log(arr[1])
console.log(arr.length)
2、new运算符声明数组,传多个参数,这些参数就都是数组的值
var arr1 = new Array(4,5,6,7,8)
console.log(arr1)
3、new运算符声明数组,实参只传递一个,这一个实参是数组长度
var arr2 = new Array(3)
console.log(arr2)
arr2[0] = 6
arr2[1] = 7
console.log(arr2)
arr2[2] = 8
arr2[3] = 9
console.log(arr2)
arr2[6] = 10
console.log(arr2)
因为js是弱类型语言,所以数组也是弱类型,同一个数组变量里可以有各种不同类型的元素**
- 数组的长度 arr.length
- 数组的索引(下标) arr[0] ~ arr[arr.length-1]
数组可以放任意类型得数据
var arr = [4,56,7,8,3]
var arr1 = ['Tom', 'Jim', 'John']
var str = 'abc'
var arr2 = [34, 'Tony', true, str, null, arr1]
数组length
var arr = [4,2,4,6,100]
console.log(arr.length)
- 数组的索引取值返回 0 ~ arr.length-1
- 如果我要取数组最后一个元素
console.log(arr[arr.length-1])
arr[arr.length] = 20
console.log(arr)
arr[arr.length] = 30 // 又在最后追加30
二维数组
var arr = [
[1,2,3],
[4,5,6],
[7,8,9, 30,4,65,76]
]
console.log(arr.length)
console.log(arr[1][2])
稀疏矩阵
- 数组中的某些元素是没有值的,如 [2,undefined,4,5,6]
var arr = new Array(5)
arr[0] = 'Tom'
arr[3] = 'Tony'
console.log(arr)
var arr = [9,2,35,5,74,12,43,4];
for(var key in arr){
console.log(typeof key);
console.log(arr[key]);
}