数组基础
- 新建数组
// 构造函数
var myCars = new Array()
myCars[0] = "Saab"
myCars[1] = "Volvo"
myCars[2] = "BMW"
// 构造函数-简洁
var myCars = new Array(10)// 长度为10
var myCars = new Array("Saab","Volvo","BMW") // 两个及以上的数字为内容
// 字面量
var myCars = ["Saab","Volvo","BMW"]
- 数组方法和属性
// 使用数组对象预定义属性和方法:
var x = myCars.length // myCars 中元素的数量
var y = myCars.indexOf("Volvo") // "Volvo" 值的索引值
- 数组常用方法
// 向数组的头部增加元素,返回数组中元素的个数(原数组发生改变)
var arr = [1,2,3]
var length = arr.unshift(0)
console.log(arr) // [0,1,2,3]
console.log(length) // 4
// 向数组尾部中增加元素,返回数组中元素的个数(原数组发生改变)
var arr = [1,2,3]
var length = arr.push(4)
console.log(arr) // [1,2,3,4]
console.log(length) // 4
// 从数组的头部删除一个元素,返回这个删除的元素,不接收参数 (原数组发生改变)
var arr = [1,2,3]
var el = arr. shift()
console.log(arr) // [2,3]
console.log(el) // 1
// 从数组的尾部删除一个元素,返回这个删除的元素,不接收参数 (原数组发生改变)
var arr = [1,2,3]
var el = arr.pop()
console.log(arr) // [1,2]
console.log(el) // 3
// 从数组指定位置删除/添加,返回删除的数组 (原数组发生改变)
var arr1 = [1,2,3]
var splice1 = arr1.splice (1) // 一个参数,从下标4对应的位置开始,直到数组结束
console.log(arr1) // [1]
console.log(splice1) // [2,3]
var arr2 = [1,2,3]
var splice2 = arr2.splice (1,1) // 两个参数从下标为1开始,第二个参数截取长度
console.log(arr2) // [1,3]
console.log(splice2) // [2]
var arr3 = [1,2,3]
var splice3 = arr3.splice (1,1,4,5,6) // 三个及三个以上的参数,从截取的起始位置开始添加第三个及以后的所有参数
console.log(arr3) // [1,4,5,6,3]
console.log(splice3) // [2]
// 数组反转,返回反转后的数组 (原数组发生改变)
var arr = [1,2,3]
var arr1 = arr.reverse()
console.log(arr) // [3, 2, 1]
console.log(arr1) // [3, 2, 1]
// 数组排序,返回排序后的数组 (原数组发生改变)
var arr = [1,3,2]
var arr1 = arr.sort() // 正序
console.log(arr) // [1, 2, 3]
console.log(arr1) // [1, 2, 3]
var arr2 = arr.sort((a,b) => b - a) // 倒序
// 数组截取,返回被截取的数组(原数组不变)
var arr = [1,2,3]
var result1 = arr.slice(1) // 从下标为1的开始截取,直至数组结束
var result2 = arr.slice(0,2) // 从下标0开始截取,到下标2结束,不包含下标2的数
console.log(result1) // [2,3]
console.log(result2) // [1,2]
console.log(arr) // [1,2,3]
// 数组转换为字符串,返回转换后字符串 (原数组不变)
var arr = [1,2,3]
var arr1 = arr.join('-')
console.log(arr) // [1, 2, 3]
console.log(arr1) // '1-2-3'
// 数组合并,返回合并后的数组(原数组不变)
var a = [1, 2]
var b = [2, 3, 4]
var ab = a. concat(b) // [1, 2, 2, 3, 4]
var ab = [...a, ...b] // [1, 2, 2, 3, 4]
- 数组的遍历方法