数组
- 数组可以先定义后赋值
- 任何数据类型的数据都可以放入数组
- typeof arr=>object
- 数组是特殊的对象,它的键名是索引(0,1,2,3…)
- 数组的键名会自动将字符串转成数字
- 数组的length可写,设置length小鱼当前length,数组自动减少到该length。设置数组length为0–>清空数组
- 可以为数组添加属性(因为他是一个对象),但不会增加数组的length
- 如果数组的键名超出了熟知的范围,转为字符串,作为属性
- in除了可以判断对象是否有该属性,同样可以判断数组是否有该键名
- for…in循环数组(包括非数值键)
- 数组的遍历最好用for或者while,推荐forEach
- 数组中间可以有空位,纳入数组长度,返回undefined
- delete命令会删除数组成员,出现空位
- 但是数组有空位和这个位置存放undefined是不一样的,遍历不会返回空位,但是undefined会返回!!
- 函数的键名都是数值的话,它就是一个类似于数组的对象,但是它不具有数组的方法属性,可是它有一个动态的length。函数的参数就是一个类似于数组的对象
- 数组的slice方法可以将类似于数组的对象返回一个真正的数组