麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

解析JavaScript中點號“.”的多義性

2019-11-20 21:32:35
字體:
來源:轉載
供稿:網友

點號「.」在JavaScript中有兩種語義

語義1、表示算術中的小數點(浮點數),如 2.5

語義2、取對象屬性、方法,如 [].push(2)

這幾乎沒有任何難理解的地方,但下面這個問題則很有趣。

復制代碼 代碼如下:

// 這行代碼會如何執行
1.toString();

Firebug 中如下



這里的點號表達的是上述的語義1,因此點號后面必須跟一個數字,這里跟的是toString,報語法錯了。

解決方法很簡單,如加個小括號

復制代碼 代碼如下:

(1).toString();

還可以這么寫,但難理解些
復制代碼 代碼如下:

1..toString();

之所以瀏覽器中都能運行,是因為各瀏覽器JS引擎都把“1..toString()”理解成了 “1.0.toString()”。這里第一個點號是語義1,第二個點號是語義2。

還有更奇怪的寫法,竟然也沒有報錯

復制代碼 代碼如下:

1 .toString(); // 注意點號前面有一個空格

顯然,這里的點號是語義2,即JS引擎會忽略點運算符前邊的空格,其實無論前后的空格都會忽略。如下
復制代碼 代碼如下:

1 . toString(); // 點號前后都有一個空格
1  .  toString(); // 點號前后各有兩個空格
1    .toString(); // 點號前有一個tab
1    .    toString(); // 點號前后各有一個tab

JS引擎不但會忽略空格,也會忽略tab。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 免费看成人av | 一色屋任你操 | 国产羞羞视频在线观看免费应用 | 黄色美女网站免费看 | 亚洲成人欧美在线 | 免费视频一区 | 久久久精品视频国产 | 草人人| 亚洲网站一区 | 羞羞的视频免费在线观看 | 黄色免费在线视频网站 | 精品av在线播放 | 中文字幕在线观看国产 | 亚洲一区二区三区在线看 | 超碰97在线人人 | 日本中文字幕网址 | 久久久久久久久久91 | 青青青在线免费 | 成人偷拍片视频在线观看 | 一级做a爱片久久 | 最新亚洲国产 | 在线成人亚洲 | 热99在线视频 | 日本黄色免费播放 | 快播av在线| 久久精品欧美电影 | 娇妻被各种姿势c到高潮小说 | 永久免费在线观看av | 免费在线看a| 欧美日韩精品一区二区三区不卡 | 免费黄色在线观看网站 | 一级成人欧美一区在线观看 | 国产在线一级片 | 免费播放av | 欧产日产国产精品v | 欧美一级特黄特色大片免费 | 视频一区二区三区免费观看 | 午夜影院日韩 | 国产在线播放一区二区 | 欧美亚洲国产一区二区三区 | 精品久久久久99 |