JS数组2019-08-18

数组

数组的定义
  • 定义:数组(array)是按次序排列的一组值。每个值的位置都有编号(从0开始),整个数组用方括号表示。
var arr = ['a', 'b', 'c'];
//构成一个数组,两端的方括号是数组的标志,a是0号位置,b是1号位置,c是2号位置
  • 数组可以先定义再赋值
var arr = [];

arr[0] = 'a';
arr[1] = 'b';
arr[2] = 'c';
//数组的0号位置是a,1号位置是b ...
  • 任何类型的数据,都可以放入数组。例如: 对象、数组、函数
  • 数组的元素还是数组,就形成了多维数组
var a = [[1, 2], [3, 4]];
a[0][1] // 2
//a的0号位置的1号位置是2
a[1][1] // 4
//a的1号位置的1号位置是4


数组的本质
  • 本质上,数组属于一种特殊的对象typeof运算符会返回数组的类型是object
typeof [1, 2, 3] // "object"
//typeof运算符认为数组的类型就是对象。
  • 数组的特殊性体现在,它的键名是按次序排列的一组整数(0,1,2...)。
  • Object.keys方法可以返回数组的所有键名
  • JavaScript语言规定,对象的键名一律为字符串,所以,数组的键名其实也是字符串。之所以可以用数值读取,是因为非字符串的键名会被转为字符串


length属性
  • 数组的length属性返回数组的成员数量。
var arr = ['a', 'b'];
arr.length // 2
  • 只要是数组,就一定有length属性.该属性是一个动态的值,等于键名中的最大整数加上1(因为是从0开始的)。
  • 数组是一种动态的数据结构,可以随时增减数组的成员。
  • 清空数组的一个有效方法,就是将length属性设为0。


in运算符
  • 作用:检查某个键名是否存在。适用于对象,也适用于数组。
var arr = [ 'a', 'b', 'c' ];
2 in arr  // true
'2' in arr // true
4 in arr // false

如果数组只有一个成员,那么其他位置的键名都会返回false。


数组的空位
  • 定义:当数组的某个位置是空元素,即两个逗号之间没有任何值,称该数组存在空位。
var a = [1, , 1];
a.length // 3
  • 数组的空位不影响length属性。
  • 数组的空位是可以读取的,返回undefined
  • 使用delete命令删除一个数组成员,会形成空位,并且不会影响length属性。
var a = [1, 2, 3];
delete a[1];

a[1] // undefined
a.length // 3
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 数值 判断NaN更可靠的方法是,利用NaN为唯一不等于自身的值的这个特点,进行判断。 isFinite方法返回一个...
    guyigg阅读 4,919评论 0 2
  • 三,字符串扩展 3.1 Unicode表示法 ES6 做出了改进,只要将码点放入大括号,就能正确解读该字符。有了这...
    eastbaby阅读 5,476评论 0 8
  • 定义 数组是按次序排列的一组值。每个值的位置都有编号(从0开始),整个数组用方括号表示。 除了在定义时赋值,数组也...
    oWSQo阅读 4,922评论 0 0
  • 参考文章:数组 1.定义 数组(array)是按次序排列的一组值。每个值的位置都有编号(从0开始),整个数组用方括...
    chrisghb阅读 2,593评论 0 0
  • (一) 数组的定义 数组(array)是按次序排列的一组值。每个值的位置都有编号(从0开始),整个数组用方括号表示...
    woow_wu7阅读 47,029评论 0 6

友情链接更多精彩内容