# 如何代理数组

## 读取操作

- 通过索引访问数组元素值：arr[0]
- 访问数组的长度：arr.length
- 把数组作为对象，使用for ... in遍历  -> ownKeys
- 使用for of迭代遍历 -> 
- 数组的原型方法，如concat/join/every/some/find/findIndex/inclues等，以及其他所有不改变原数组的方法

## 数组操作

- 通过索引修改: arr[0] = 3，*同时可以影响length*
- 修改数组长度: arr.length = 5，*同时也可以影响索引*
- 数组的栈方法：push/pop/shift/unshift
- 修改原数组的方法：splice/fill/sort 等

