JavaScript中省略元素對數(shù)組長度的影響
在學(xué)習(xí)《JavaScript權(quán)威指南》第六版的第7.1節(jié)中通過數(shù)組直接量創(chuàng)建數(shù)組時(shí),我們可以不給數(shù)組的某個(gè)元素賦值,它就會(huì)使undefined。雖然是undefined,但我們調(diào)用數(shù)組對象的length屬性時(shí)undefined也會(huì)導(dǎo)致length加1。有如下所示的四種情況:
var undef0 = [,,]; var undef1 = [1,,]; var undef2 = [,1,]; var undef3 = [,,1]; console.log(undef0.length); console.log(undef1.length); console.log(undef2.length); console.log(undef3.length);
我們可以猜一下四個(gè)console.log輸出的長度各是多少,之前我一定會(huì)猜都是3。實(shí)際結(jié)果如下所示:
這是為什么呢,答案就是:數(shù)組直接量的語法允許有可選的結(jié)尾的逗號,故[,,]、[1,,]、[,1,]這三種情況JS引擎會(huì)認(rèn)為最后一個(gè)逗號是結(jié)尾的逗號,所以就認(rèn)為只有兩個(gè)元素,而[,,1]這種情況人為的給最后一個(gè)逗號后面又添加了一個(gè)元素,所以最后一個(gè)逗號就不是結(jié)尾了,所以我們就能想到[,,1,]的長度仍然為3。
以上所述是小編給大家介紹的JavaScript中省略元素對數(shù)組長度的影響,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
- Javascript 跨域知識詳細(xì)介紹
- Java中常用緩存Cache機(jī)制的實(shí)現(xiàn)
- JavaScript中訪問id對象 屬性的方式訪問屬性(實(shí)例代碼)
- RegExp 隨筆 JavaScript RegExp 對象
- JavaScript實(shí)現(xiàn)使用Canvas繪制圖形的基本教程
- Java開發(fā)環(huán)境jdk 1.8安裝配置方法(Win7 64位系統(tǒng)/windows server 2008)
- Javascript將字符串日期格式化為yyyy-mm-dd的方法
- JavaScript登錄驗(yàn)證碼的實(shí)現(xiàn)
- javascript iframe跨域詳解
- Java微信支付-微信紅包
- java從字符串中提取數(shù)字的簡單實(shí)例
- Java doGet, doPost方法和文件上傳實(shí)例代碼
相關(guān)文章
javascript中負(fù)數(shù)算術(shù)右移、邏輯右移的奧秘探索
javascript中負(fù)數(shù)的算術(shù)右移和邏輯右移都十分的讓人迷惑,特別是邏輯右移,接下來的文章中將為大家詳細(xì)介紹下為什么右移之后,一個(gè)很小的負(fù)數(shù)也會(huì)得到一個(gè)無比巨大的數(shù)2013-10-10詳解JavaScript中關(guān)于this指向的4種情況
這篇文章主要介紹了JavaScript中關(guān)于this指向的4種情況,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-04-04JS實(shí)現(xiàn)的ajax和同源策略(實(shí)例講解)
下面小編就為大家分享一篇JS實(shí)現(xiàn)的ajax和同源策略的實(shí)例講解,具有很好的參考價(jià)值,希望對大家有所幫助2017-12-12JavaScript中使用replace結(jié)合正則實(shí)現(xiàn)replaceAll的效果
JavaScript?中使用?replace?達(dá)到?replaceAll的效果,其實(shí)就用利用的正則的全局替換。2010-06-06asp.net下利用js實(shí)現(xiàn)返回上一頁的實(shí)現(xiàn)方法小集
其實(shí)要實(shí)現(xiàn)這個(gè)功能主要還是要用到j(luò)avascript2009-11-11JavaScript實(shí)現(xiàn)一個(gè)多少秒后自動(dòng)跳轉(zhuǎn)的頁面(案例代碼)
最近遇到這樣一個(gè)需求是用js簡單實(shí)現(xiàn)一個(gè)多少秒后自動(dòng)跳轉(zhuǎn)的頁面,實(shí)現(xiàn)代碼非常簡單,對js自動(dòng)跳轉(zhuǎn)頁面相關(guān)知識感興趣的朋友一起看看吧2023-01-01js實(shí)現(xiàn)數(shù)字跳動(dòng)到指定數(shù)字
這篇文章主要為大家詳細(xì)介紹了js實(shí)現(xiàn)數(shù)字跳動(dòng)到指定數(shù)字,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-08-08一個(gè)極為簡單的requirejs實(shí)現(xiàn)方法
下面小編就為大家?guī)硪黄粋€(gè)極為簡單的requirejs實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-10-10javascript文本框內(nèi)輸入文字倒計(jì)數(shù)的方法
這篇文章主要介紹了javascript文本框內(nèi)輸入文字倒計(jì)數(shù)的方法,涉及javascript針對鍵盤事件的操作技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-02-02