欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          javascript數(shù)組下標從什么開始

          javascript數(shù)組下標從0開始。原因:1、從0開始,可以減少一次減法操作,減少CPU指令運算,可以提升CPU的效率;2、物理內(nèi)存的地址是從0開始的。

          javascript數(shù)組下標從什么開始

          本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。

          javascript數(shù)組下標是從0開始的。

          那么為什么javascript數(shù)組下標是從0開始的,而不是從1開始呢?

          原因一:歷史原因

          語言出現(xiàn)順序從早到晚C、Java、JavaScript。

          C語言數(shù)組下標是從0開始->Java也是->JavaScript也是。

          降低額外的學(xué)習(xí)和理解成本。

          原因二:減少CPU指令運算

          (1)下標從0開始:

          數(shù)組尋址——arr[i] = base_address + i * type_size(1)

          其中base_address為數(shù)組arr首地址,arr0就是偏移量為0的數(shù)組,即數(shù)組arr首地址;i為偏移量,type_size為數(shù)組類型字節(jié)數(shù),比如int為32位,即4個字節(jié)。

          (2)下標從1開始:

          數(shù)組尋址——arr[i] = base_address + (i -1)* type_size(2)

          比較兩個計算公式可以發(fā)現(xiàn)公式(2)每次CPU尋址需要多一次i-1的操作,即多了一次減法的指令運算。

          對于數(shù)組這種基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),無論在哪種高級程序語言中,都是頻繁間接(作為容器的基礎(chǔ)數(shù)據(jù)結(jié)構(gòu),比如Java的ArrayList)或者直接被使用的,因此要盡量減少其消耗CPU資源。從0開始,可以減少一次減法操作,提升了CPU的效率。

          原因三:物理內(nèi)存的地址是從0開始的

          計算機主存是多個連續(xù)字節(jié)大小的單元組成的數(shù)組,每個字節(jié)都對應(yīng)唯一的物理地址,第一個字節(jié)的地址為0。

          【推薦學(xué)習(xí):javascript高級教程】

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號