【冰山白皮書】JS中的基本概念


關(guān)于我們


QQ答疑交流群:
600633658

我們的鏈接:

知乎 掘金 今日頭條 新浪微博 前端網(wǎng) 思否 簡(jiǎn)書 B站
書寫方式
--

大小寫的區(qū)分

  1. HTML標(biāo)簽是否區(qū)分大小寫:不區(qū)分(規(guī)范中要求區(qū)分,但是瀏覽器做了兼容)
  2. HTML屬性是否區(qū)分大小寫:不一定(大部分屬性是不區(qū)分大小寫的,包括事件觸發(fā)涉及到data-之類的屬性只能使用小寫,因?yàn)槭褂肑S取值的時(shí)候會(huì)轉(zhuǎn)換成駝峰命名)
  3. JS是否區(qū)分大小寫:區(qū)分

使用建議:書寫HTML要使用小寫,特殊的屬性使用-連字符。

標(biāo)識(shí)符

什么是標(biāo)識(shí)符

標(biāo)識(shí)符就是名字

如何命名

  1. 以字母 $ _ 開頭,(字母包括任何一個(gè)國(guó)家的語(yǔ)言,包括漢字,π等)
  2. 一般使用駝峰式命名

注釋

兩種方式://或/**/
可以在sublime中添加docblockr插件

運(yùn)行模式

  1. 嚴(yán)格模式
  2. 普通模式

嚴(yán)格模式出現(xiàn)的原因

  1. ES5中提出來(lái)解決ES3中的不合理之處和怪異的行為
  2. 更安全高效
  3. 作為未來(lái)的過(guò)渡

開啟嚴(yán)格模式的方法

  1. 在整個(gè)代碼的第一行輸入’use strict’(不利于合并)
  2. 在函數(shù)的第一行輸入’use strict’(建議初學(xué)者使用)

嚴(yán)格模式的問(wèn)題

  1. 只能在ES5下運(yùn)行(IE10以上的瀏覽器)
  2. 不能使用控制臺(tái)進(jìn)行調(diào)試(因?yàn)闉g覽器控制臺(tái)的運(yùn)行是基于eval函數(shù)來(lái)運(yùn)行的)
  3. 兼容性有問(wèn)題

語(yǔ)句中的括號(hào)和分號(hào)

分號(hào)

JS的解釋器會(huì)自動(dòng)為需要添加分號(hào)的位置添加分號(hào)

編碼風(fēng)格的兩個(gè)流派

  • 保守派:能加分號(hào)就加分號(hào)
  • 豪放派:能不加分號(hào)就不加分號(hào)

解釋器如何添加分號(hào)(能合并就合并)

  1. 將當(dāng)前行和下一行代碼進(jìn)行合并
  2. 嘗試是否能執(zhí)行
  3. 如果能執(zhí)行就不加分號(hào),如果不能執(zhí)行則加分號(hào)再嘗試
  4. 如果還是不能執(zhí)行就報(bào)錯(cuò)

自動(dòng)添加分號(hào)引出的問(wèn)題

  • 好處:條件判斷語(yǔ)句和字符串鏈接語(yǔ)句的結(jié)構(gòu)能夠更加清晰
  • 壞處:括號(hào)和運(yùn)算符開頭的語(yǔ)句可能和上一行語(yǔ)句合并

如何避免自動(dòng)分號(hào)問(wèn)題

在程序的開頭添加一個(gè)分號(hào)

自動(dòng)添加分號(hào)規(guī)則的特例

  1. 遇到return break continue 3個(gè)關(guān)鍵字時(shí)不會(huì)合并(幾乎無(wú)法調(diào)試)
  2. ++ -- 開頭的時(shí)候

括號(hào)

對(duì)于可以包含語(yǔ)句塊的語(yǔ)句來(lái)說(shuō),如果語(yǔ)句塊中的語(yǔ)句只有一條,括號(hào)可以省略
這樣的語(yǔ)句包括:if else for while

使用分號(hào)和括號(hào)的建議

分號(hào)和括號(hào)該加的都加上

關(guān)鍵字和保留字

  • 什么是關(guān)鍵字:解釋器有特殊用途的名字,不能做為標(biāo)識(shí)符使用
  • 什么是保留字:解釋器暫時(shí)沒(méi)有用途,但是以后可能會(huì)用到的名字,不能作為標(biāo)識(shí)符使用

如何避免關(guān)鍵字和保留字
1.把所有的關(guān)鍵字和保留字都記住

  • 通過(guò)一段時(shí)間的開發(fā)記住所有的關(guān)鍵字
  • 所有JAVA中的關(guān)鍵字都是JS的保留字
  • 所有的關(guān)鍵字和保留字都是小寫字母因此可以采用駝峰式的命名
    2.使用拼音命名

變量

初始化變量的過(guò)程:只是單純的賦值,并沒(méi)有設(shè)置數(shù)據(jù)類型(非常重要)
使用var 和不使用var 的區(qū)別(一個(gè)是局部變量,一個(gè)是全局變量)
可以使用逗號(hào)來(lái)定義多個(gè)變量(建議將逗號(hào)寫在前面)

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 前端07班 王語(yǔ)句JavaScript程序的執(zhí)行單位為行(line),也就是一行一行地執(zhí)行。一般情況下,每一行就是...
    ea203453e188閱讀 986評(píng)論 0 4
  • 一、Python簡(jiǎn)介和環(huán)境搭建以及pip的安裝 4課時(shí)實(shí)驗(yàn)課主要內(nèi)容 【Python簡(jiǎn)介】: Python 是一個(gè)...
    _小老虎_閱讀 6,326評(píng)論 0 10
  • 語(yǔ)句 JavaScript程序的執(zhí)行單位為行(line),也就是一行一行地執(zhí)行。一般情況下,每一行就是一個(gè)語(yǔ)句。 ...
    米塔塔閱讀 505評(píng)論 1 10
  • 概要 64學(xué)時(shí) 3.5學(xué)分 章節(jié)安排 電子商務(wù)網(wǎng)站概況 HTML5+CSS3 JavaScript Node 電子...
    阿啊阿吖丁閱讀 9,846評(píng)論 0 3
  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,711評(píng)論 0 5

友情鏈接更多精彩內(nèi)容