创建数组的方法:
1.利用new关键字创建数组
var arr(数组名)= new Array() 创建一个空数组
2.字面量
var arr = []
数组每一个元素都对应着一个索引(下标)
语法:数组名[索引]
下标从0开始
给数组新增元素时,如果不是按顺序新增的,空出来的下标是空属性
arr[下标]=值
获取数组的长度,使用length的属性
默认情况下数组的长度就是数组的元素个数
判断是不是数组 Array.isArray() 返回值如果是数组就返回true
数组的方法:
push 推 在数组末尾添加一个或多个数组的元素,添加元素后length也会相应变化,会改变元素组
// var arr = [23, 1, 1, 23, 4]
// arr.push(0, 1, 2, 3, 4)
// console.log(arr)
//unshift (在数组的嘴前面添加一个或多个数组的元素,添加元素后length也会相应变化,之前元素的下标也会相应改变)
// arr.unshift(1, 2, 3, 4)
// console.log(arr)
//pop 删除数组中的最后一个元素,不需要传参,一次只能删一个,返回值是删除的那个元素
// arr.pop()
// console.log(arr.pop())
//shift 删除数组中嘴前面的元素,不需要传参,一次只能删一个,返回值是删除的那个元素
// console.log(arr.shift())
查询数组的索引:
var arr = [1, 2, 34, 44, 12, 32]
//indexof(元素) 通过元素查找索引,返回值是元素的索引,如果查找不存在的元素时,返回值是-1
//如果数组中有相同元素时,查找的索引是从前往后第一个元素的索引
console.log(arr.indexOf(1))
//lastIndexof() 从后往前查找,并返回元素的索引,如果查找不存在的元素时,返回值是-1
//如果数组中有相同元素时,查找的索引是从后往前第一个元素的索引
console.log(arr.lastIndexOf(12))
console.log(arr.lastIndexOf(32))
数组的去重:
var arr = [1, 3, 3, 4, 5, 6, 8, 6]
//创建新数组
var newArr = []
for (var i = 0; i < arr.length; i++) {
//判断新数组中是否能查到这个元素,查不到才进入if分支语句
if (newArr.indexOf(arr[i]) == -1) {
//把元素push到新数组中
newArr.push(arr[i])
}
}
console.log(newArr)
数组的排序问题:
翻转数组:
var arr = [4, 3, 2, 1]
arr.reverse()
console.log(arr)
数组的排序:
var arr = [1, 3, 5, 7, 9]
arr.sort(function (a, b) {
return a-b //从小到大排序
return b - a //从大到小排序
})
console.log(arr)