数组的本质
- 本质是一个对象
- length属性:数组的长度,会自动变化,值为最大下标+1
- 连续下标的取值范围 1~ length-1 ,直接给length赋值可能会截断数组
下标
下标不连续的数组叫做 稀松数组
添加数组项
- Array[Array.length] = 数据
- 数组.push(数据)
- 数组.unshift():向数组起始位置添加一个数据
- 数组.splice(下标,0,添加的数据):从指定下标位置开始,删除0个,然后在该位置插入添加的数据,如果下标超过范围,则按照范围的边界处理
push unshift splice可以处理多个数据
删除数据
- delete 数组[下标] :不会改变下标,会导致稀松数组
- 数组.pop() :删除数组的最后一项,该表达式返回最后一项的数据
- 数组.shift():删除第一项,返回第一项的值
数组.splice(下标,删除的个数):返回被删除的数据
- 数组.slice(起始位置下标,结束位置下标 ):从起始位置到结束位置之间的数据拿出来,得到一个新的数组,不会改变原来的数组;结束为止下标取不到
不写结束下标,则直接取到末尾
下标是负数,从数组末尾开始
数组清空:
- 数组.splice(0,length)
- 数组.length = 0;
数组.indexOf(数据):找到第一个下标,返回下标,没有找到则返回 -1
数组.lastIndexOf(数据) 查找数据的最后一个下标
in关键字
- 判断某个属性(属性名)是否存在
- 属性名 in 对象
for-in 循环
for(var prop in 对象){}
数组.fill
- 数组.fill(数据,开始下标,结束下标):将数组的所有项填充为指定的数据