js中的語法大量借鑒於C以及其他類C語言(Java,Perl)。 js中一切(變數、函數名、操作符等等)都區分大小寫。 ...
js中的語法大量借鑒於C以及其他類C語言(Java,Perl)。
js中一切(變數、函數名、操作符等等)都區分大小寫。如”var a;”中的變數a跟”var A;”中的變數A不同。typeof,valueOf,instanceof等等操作符都區分大小寫。
js中標識符(變數、函數名、參數名等等)命名規則:駝峰命名方式。且首位字元不能為數字,可以為字母,下劃線,$符號;其他位字元可以為數字、字母、下劃線、$.
js中代碼註釋:// 單行註釋 , /** 代碼塊 **/ 多行註釋
js中標識符不能跟關鍵字重名。比如說你定義一個變數或者函數,名字不能為typeof,因為typeof是ES中的關鍵字;
變數:js中變數是鬆散類型的(指的是js中變數可以保存任何類型的值)。每個變數僅僅是一個保存值的占位符而已。
變數聲明方式:var 變數名;
註意:用var操作符 定義的變數,這個變數將會成為定義這個變數作用域中的局部變數。
如:你在一個js文件開頭位置(且是函數外部)定義一個變數:var first = 1;那麼這個變數first就是這整個js文檔的局部變數;整個文檔執行完畢,這個變數也就自動銷毀了;
再如:
function f(){ var first = 1; }
那麼這個變數first就是函數f()的作用域中的局部變數,當函數f()執行完畢,這個變數自動銷毀。
你也可以省略操作符var去創建一個全局變數。(但是不推薦此做法,因為在局部作用域中定義全局變數不容易維護)
function f(){ first = 1; }
這種寫法,變數first是一個全局變數。在函數外部,依舊可以訪問到這個變數。
註:後面會詳情講解“什麼是作用域?”以及”js中垃圾回收機制”。