首页 >web前端 >前端问答 >javascript数组下标从什么开始

javascript数组下标从什么开始

青灯夜游
青灯夜游原创
2021-10-28 17:02:414558浏览

javascript数组下标从0开始,原因:1、从0开始,可以减少一次减法操作,减少CPU指令运算,可以提升CPU的效率;2、物理内存的地址是从0开始的。

javascript数组下标从什么开始

本教程操作环境:windows7系统、javascript1.8.5版、Dell G3电脑。

javascript数组下标是从0开始的。

那么为什么javascript数组下标是从0开始的,而不是从1开始呢?

原因一:历史原因

语言出现顺序从早到晚C、Java、JavaScript。

C语言数组下标是从0开始->Java也是->JavaScript也是。

降低额外的学习和理解成本。

原因二:减少CPU指令运算

(1)下标从0开始:

数组寻址——arr[i] = base_address i * type_size(1)

其中base_address为数组arr首地址,arr0就是偏移量为0的数组,即数组arr首地址;i为偏移量,type_size为数组类型字节数,比如int为32位,即4个字节。

(2)下标从1开始:

数组寻址——arr[i] = base_address (i -1)* type_size(2)

比较两个计算公式可以发现公式(2)每次CPU寻址需要多一次i-1的操作,即多了一次减法的指令运算。

对于数组这种基础数据结构,无论在哪种高级程序语言中,都是频繁间接(作为容器的基础数据结构,比如Java的ArrayList)或者直接被使用的,因此要尽量减少其消耗CPU资源。从0开始,可以减少一次减法操作,提升了CPU的效率。

原因三:物理内存的地址是从0开始的

计算机主存是多个连续字节大小的单元组成的数组,每个字节都对应唯一的物理地址,第一个字节的地址为0。

【推荐学习:javascript高级教程

以上是javascript数组下标从什么开始的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn