数组是可变有序的集合,可以存储任意的数据类型,JavaScript 的数组表示符号是 []。
[1, 2, 3.14, 'Hello', null, true, [], {}] // 数组结构
// 注意:用 typeof 验证数组的类型返回的是 'object' ,合理的情况返回的应该 'array',这也是 JavaScript 的坑之一,详细的 “类型检测” 请查看后面相关章节
typeof [] // "object"
// 创建
var arr = [1,2,3]
// 取值
console.log(arr[1]) // 2
// 赋值
arr[0] = 'a'
console.log(arr) // ['a',2,3]
常用的一些数组操作方法。
[].length // 0 | 长度
[1,2,3].indexOf(2) // 元素首次出现的索引位置,不存在返回 -1
['a','b','c'].slice(0,2) // 'bc' | 切片,从第 0 位到第 2 位
[1,3,2].sort() // [1,2,3] | 排序
[1,3,2].reverse() // [2,3,1] | 反转
/* push 添加元素到末尾,并返回最新长度 */
var arr = [1,2]
console.log(arr.push(3)) // 3
console.log(arr) // [1,2,3]
/* pop 弹出数组最后的元素 */
var arr = [1,2,3]
console.log(arr.pop()) // 3
console.log(arr) // [1,2]
/* unshift 添加元素到开头,并且返回最新长度 | 相反的 push */
/* shift 弹出数组第一个元素 | 相反的 pop */
/* concat 合并 */
var a = [1,2]
var b = ['a', 'b']
var c = a.concat(b)
console.log(c) // [1, 2, "a", "b"]
/* splice 替换 */
var arr = [1,2,3]
console.log(arr.splice(1,2,'a')) // 从 1 位开始替换掉 2 位 | 并且返回被替换的值 [2,3]
console.log(arr) // [1,'a']
/* splice 删除 */
var arr = [1,2,3]
console.log(arr.splice(1,2)) // 从 1 位开始删除掉 2 位 | 并且返回被删除的值 [2,3]
console.log(arr) // [1]
JavaScript 数据类型
JavaScript 数字
JavaScript 字符串
JavaScript 数组
JavaScript 对象
JavaScript Map
JavaScript Set
JavaScript null
JavaScript undefined
JavaScript 类型检测
JavaScript 包装对象
JavaScript 函数
JavaScript 参数
JavaScript 匿名函数
JavaScript 箭头函数
JavaScript 递归
JavaScript 闭包
JavaScript 生成器
JavaScript 异步
JavaScript setTimeout
JavaScript setInterval
JavaScript 回调
JavaScript Promise
JavaScript async await