本篇是小紅書筆記的第六篇,也許你會奇怪第六篇筆記才寫語法基礎,筆者是否是穿越了。javascript
答案固然是沒有,筆者在此分享本身的閱讀心得,很多人翻書都是從頭開始,結果永遠就只在前幾章。
對此,筆者換了隨機閱讀的方式,哪章感興趣了或者想補知識點,再去翻閱對應的章節。固然目錄仍是要翻的。html
工做生活節奏太快,知識太多,時間與知識的增加成反比,求全不如求專,也許不能看徹底書,但至少掌握所需知識點。java
思惟導圖是個好東西,一圖流。面試
_
,美圓符號$
,數字組成obj[123] = 123
數據類型共有10個,ES5有7個,3個爲ES6新增數組
number/boolean/string/undefined/object/null/function/symbol/set/map
typeof
instanceof
undefined
(使用var聲明但未初始化)null
(空對象指針)undefined == null // true
NaN表示原本應返回一個數值,結果未正確返回函數
NaN
不等於任何值,且不等於自身isNaN()
可判斷是否爲NaN
參數值 | 結果 |
---|---|
true | 1 |
false | 0 |
null | 0 |
undefined | NaN |
'' | 0 |
'168' | 168 |
'168hello' | NaN |
'hello' | NaN |
TIPS:參數值爲一個對象,則先調用valueOf()
, 沒有再調用toString()
, 而後遵循上述規則測試
Number()
)parseInt('168hello') -> 168
parseInt()
)parseFloat('520.13.14') -> 520.14
toString()
方法,可在參數中指定轉換進制null/undefined
沒有toString()
方法toString()
方法,則調用toString()
方法null
轉爲 "null"
undefined
轉爲 "undefined"
arguments
if...else...
do...while...
後測試循環,不一樣於while/for前測試循環while
for
for...in...
遍歷對象屬性label
與 break/continue
合用switch...case...
case 全等判斷with
將代碼做用域設置到特定的對象中case
判斷時是全等判斷,不會進行類型轉換case
值不必定是常量,能夠是變量,甚至是表達式case 'hello' + 'word'; case num < 10;
label語句容許在代碼中添加標籤,label
與break/continue
聯合使用,可返回代碼指定位置編碼
var num = 0; outermost: for (var i = 0; i < 10; i++) { for (var j = 0; j < 10; j++) { if ( i== 5 && j == 5) { break outermost; // 退出循環(由於outermost定義的位置在最外層) // 普通的break只能跳出一層循環 } } }
with語句的做用是將代碼的做用域設置到一個特定的對象url
// window.location 對象爲例子 with(location) { var url = href; // location.href }
一元操做符指的是隻能操做一個值的操做符設計
++
--
var a = 2; var b = 20; var c = a-- + 20; // 後置運算 c: 22, a: 1
!
!!
功能等於 Boolean() 轉型函數
&&
||
規則與邏輯與相同,不一樣的是隻要第一個參數成立則不會進行後續運算
TIPS:邏輯與或都屬於短路運算,並不必定返回true/false,參數未聲明可能會報錯或賦值不成功
+, -, *, /, %
<, >, <=, >=, ==, ===, !=, !===
valueOf()
,沒有valueOf()
再調用toString()
===
全等會進行值與類型的比較null == undefined // true
三元表達式
var score = 90; var achie = score > 90 ? '優秀' : '再接再礪';
逗號操做符能夠在一條語句執行多個操做,經常使用於變量初始化
TIPS: 用於賦值時,逗號操做符會返回表達式最後一項的值
var name = 'KenTsang', age = 28, job = 'Developer';
詳解逗號表達式,可移步筆者的文章:《一道JS面試題引起的血案》。
if-else/switch-case/?:/&&/||
可移步筆者的文章: 《JS中 if/ if...else替換方式》
參考文檔
做者:以樂之名 本文原創,有不當的地方歡迎指出。轉載請指明出處。