数组相关知识

用中括号 [] 通过指定数组名以及索引号码,你可以访问

 

  数组a赋值给数组b:

 

 

 
数组的长度

数组是一组数据,length属性表示这个数组中的内容的个数。简称数组的长度。 该长度是可读可写的属性。 当设置属性的时候,表示要修改该数组的长度。数组的长度会发生变化。 当读取时,会实时返回数组的当时的长度。

关联数组基本概念: “关联数组”是一种具有特殊索引方式的数组。不仅可以通过整数来索引它,还可以使用字符串或者其他类型的值(除了NULL)来索引它。关联数组的索引值是任意的标量,这些标量称为Keys,可以在以后用于检索数组中的数值。关联数组的元素没有特定的顺序。

如何定义关联数组? var defs = []; defs[key] = value; //key 和 value 需要分别赋予不同的值。

数组的遍历

第一种:普通for循环

 

 

 
最简单的一种,也是使用频率最高的一种,虽然性能不弱,但仍有优化空间
 
第二种:优化版for循环

 

 

使用临时变量,将长度缓存起来,避免重复获取数组长度,当数组较大时优化效果才会比较明显。

这种方法基本上是所有循环遍历方法中性能最高的一种

 
第三种:弱化版for循环

 

 

这种方法其实严格上也属于for循环,只不过是没有使用length判断,而使用变量本身判断

实际上,这种方法的性能要远远小于普通for循环

第四种:foreach循环

 

 

数组自带的foreach循环,使用频率较高,实际上性能比普通for循环弱
 
第五种:foreach变种

 

 

由于foreach是Array型自带的,对于一些非这种类型的,无法直接使用(如NodeList),所以才有了这个变种,使用这个变种可以让类似的数组拥有foreach功能。

实际性能要比普通foreach弱

第六种:forin循环

 

 

in 中的循环变量代表的是下标(key)
这个循环很多人爱用,但实际上,经分析测试,在众多的循环遍历方式中它的效率是最低的
 
第七种:map遍历
这种方式也是用的比较广泛的,虽然用起来比较优雅,但实际效率还比不上foreach
 
第八种:for of遍历(需要ES6支持)

 

 这种方式是es6里面用到的,性能要好于forin,但仍然比不上普通for循环

 

二维数组的表示   myarray[][]

二维数组的定义

 
 
 
 
 
 
 

 

 

 
 
 

 

 

 
 
posted on 2022-05-10 15:36  无心情泡面  阅读(44)  评论(0编辑  收藏  举报