React踩坑筆記 —— JS、ES6
阿新 • • 發佈:2018-12-29
- Java|JavaScript中Lamda表示式沒有自己的this,它保留了封閉詞彙上下文的this值,且Lamda被建立時被設定;
- JS可以函數語言程式設計,所以要注意
變數初始化時
,賦值的是函式呼叫()
還是函式本身
; - 宣告在函式中的變數稱為區域性變數。
- var區域性變數作用域整個函式體,且具備
宣告提升
; - let作用於塊和子塊,不具有
提升
特性; - 同一塊中,let變數不能被宣告兩次
- 子塊中可以再次let宣告,覆蓋從父塊繼承的值,且不會影響父塊;
- 子塊中不可以再次var宣告,因為var會宣告提升,相當於let變數在同一塊中被多次宣告;
- var區域性變數作用域整個函式體,且具備
e.preventDefault();
注意keydown事件監聽函式中,一般不要阻止預設行為,否則會影響輸入等;- 行內Event監聽函式,要主動傳入
event
、this
物件,且此時this
指向該Dom元素; - 擴充套件語法(Spread syntax)在陣列中使用,記得判 null | undefined:
const numbers = undefined; console.log({...numbers});//Object { } console.log([...numbers]);//Error: numbers is not iterable
- “JS的假是真的假”
0
、-0
、null
、false
、NaN
、Undefined
甚至是空字串“”
,都是假,除此之外,所有其他值、任意物件、包括字串“false”
、長度不為零的空白字串“ ”
都為真。