今天是 2018 - 1 - 11,想寫點什么呢。說點不能定義為變量的關鍵字和保留字吧
用 var 定義作用域變量
同時新增了一些 let 定義局部變量 ,const 定義常量
不過很可惜,新增的在目前的安卓上用不了。
function 這個不陌生了吧,申明一個Function對象
return 也是非常常見的,用來結束當前作用域的執行流程
if 邏輯判斷 else 可以組成很簡單的選擇結構
while和for 兩者都是等價的循環操作符
不過while和do..while需要注意一下區別
do{ 一下,然后}while()和while(){然后隱藏的do}的區別,前一個先執行一次試試,后一個試也不準試。
break和 continue 負責調整循環走向,結束整個循環用break,跳過當次循環用continue。
其實還有一種假裝是if的選擇結構 switch,不過太多了case是影響效率的。
delete 其實是一個操作符,用來刪除某個對象上的屬性用的
typeof 操作符,通常用來判斷數據的基本類型,有: object string number boolean undefined symbol,順帶一提null是object的子對象,可以用 typeof操作符,同時也有typeof函數可以用,效果是一樣的
常用的可能會出現誤區的地方
typeof null // object
typeof [] // object
typeof '' // string
typeof undefined // undefined
typeof Symbol // function
typeof Symbol() // symbol
說到這里就不能不說instanceof了,當然我提過好多次。
有問題時不想處理就throw一個BUG(Error)出來
try{}catch(){}finally{} 抓BUG,啪啪啪處理一頓,但是能不能成熟的像個孩子,少寫點BUG
對不對還不是得看true和false怎么用,但是沒有值能用時null和undefined的含義也是不一樣的
如果你寫nodejs,
那可高興了什么yield,async,await,都能用了。
如果你用babel,那么上面的都能用
下面的也能用
import , from ,
如果你寫typescript
那恭喜你你還有 private ,public ,default,extends,implements,super, static, enum也可以用
有些字它不是關鍵字,但是也不能用
java的關鍵字,在js里面也不能用來定義變量,畢竟要向當初的大佬看起,這種歷史問題就不好追究了。
內定的全局變量也不能作為變量使用,畢竟人家先定義的,你不能亂改一通,代碼還想不想用了。
比如你在瀏覽器下面,window對吧,你var window =1,不管你怎么定義這個window都是Window對象,不會變成1的,要是變了可不得亂套不成。
假如你寫node,require對吧,你啪的一下,把require改了,然后就沒有然后了。
最重要的this,不必再說了。