最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

解析JavaScript中點(diǎn)號(hào)“.”的多義性

 更新時(shí)間:2013年12月02日 10:10:39   作者:  
這篇文章主要介紹了JavaScript中點(diǎn)號(hào)“.”的多義性。需要的朋友可以過來參考下,希望對(duì)大家有所幫助

點(diǎn)號(hào)「.」在JavaScript中有兩種語義

語義1、表示算術(shù)中的小數(shù)點(diǎn)(浮點(diǎn)數(shù)),如 2.5

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

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

復(fù)制代碼 代碼如下:

// 這行代碼會(huì)如何執(zhí)行
1.toString();

Firebug 中如下



這里的點(diǎn)號(hào)表達(dá)的是上述的語義1,因此點(diǎn)號(hào)后面必須跟一個(gè)數(shù)字,這里跟的是toString,報(bào)語法錯(cuò)了。

解決方法很簡單,如加個(gè)小括號(hào)

復(fù)制代碼 代碼如下:

(1).toString();

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

1..toString();

之所以瀏覽器中都能運(yùn)行,是因?yàn)楦鳛g覽器JS引擎都把“1..toString()”理解成了 “1.0.toString()”。這里第一個(gè)點(diǎn)號(hào)是語義1,第二個(gè)點(diǎn)號(hào)是語義2。

還有更奇怪的寫法,竟然也沒有報(bào)錯(cuò)

復(fù)制代碼 代碼如下:

1 .toString(); // 注意點(diǎn)號(hào)前面有一個(gè)空格

顯然,這里的點(diǎn)號(hào)是語義2,即JS引擎會(huì)忽略點(diǎn)運(yùn)算符前邊的空格,其實(shí)無論前后的空格都會(huì)忽略。如下
復(fù)制代碼 代碼如下:

1 . toString(); // 點(diǎn)號(hào)前后都有一個(gè)空格
1  .  toString(); // 點(diǎn)號(hào)前后各有兩個(gè)空格
1    .toString(); // 點(diǎn)號(hào)前有一個(gè)tab
1    .    toString(); // 點(diǎn)號(hào)前后各有一個(gè)tab

JS引擎不但會(huì)忽略空格,也會(huì)忽略tab。

相關(guān)文章

最新評(píng)論

四子王旗| 五台县| 福州市| 邢台市| 晋城| 金平| 大同市| 武邑县| 吴堡县| 皮山县| 松桃| 永年县| 霍邱县| 牙克石市| 彩票| 清水县| 临夏县| 加查县| 华宁县| 吴桥县| 南木林县| 桃园县| 泰和县| 洪泽县| 谢通门县| 上林县| 乌恰县| 佛学| 丽江市| 萍乡市| 广灵县| 漳州市| 邮箱| 蓬溪县| 裕民县| 宜宾县| 平山县| 玉林市| 洛川县| 德清县| 灵山县|