這些內容是我學習《fullstack-react-book》一書,自己翻譯整理出來的要點。
JSON
- JSON代表了JavaScript對象標記(JavaScript Object Nation)。JSON能夠讓我們加載一個JavaScript對象,並且我們能在一個text文件裏面進行讀寫。
三元運算符
- 也叫“三目運算符”,語法:
condition ? expression1 : expression2;
。
時間單位
- JavaScript中的時間功能都是基於毫秒爲單位的。
Array.prototype.concat()
- 這個方法會創建一個新數組。新數組的成員順序爲調用方數組的成員和參數方數組的成員。
Object.assign()
- 可以把任意數目個源對象的屬性拷貝給目標對象,然後返回目標對象,語法:
Object.assign(target, ...sources)
。 - 當這個方法接受兩個參數的時候,它把第二個對象裏面的屬性覆蓋複製入第一個對象。
- 但是,我們通常使用三個對象作爲參數,第一個參數是個待返回的空目標對象,第二個參數是我們將要複製的源對象,第三個參數是擁有着要被修改或添加的屬性的對象。
對象的引用
- 在JavaScript中,對象是通過引用的方式進行傳遞的。如果,修改某個對象的屬性值,那引用過來的源對象的屬性值也會發生改變,而不是在源對象的拷貝版本中進行修改!
- 修改引用對象通常是一種錯誤的做法。通常在操作對象的時候,我們會遵循以下這條原則“除非一個函數申明擁有了一個對象,否則我們都應該抑制在對象上做任何改動”!
Array.prototype.filter()
- 語法:
array.filter(callback[, thisArg])
! - 該方法接受一個用來“測試”數組中的所有值的函數!它最後將返回一個囊括了所有通過“測試”的成員的數組。如果一個成員經函數“測試”後返回true時,那該成員就會保留在返回的數組中!
setInterval()與clearInterval()
- 語法:
window.setInterval(func, delay[, param1, param2, ...])
。 - 該方法接受兩個參數。第一個參數是一個被用來反覆執行的函數,第二個參數是兩次運行重複函數的時間間隔(以毫秒爲單位)!
setInterval()
方法會返回一個獨一無二的Interval ID。你可以在任何時間點將這個Interval ID作爲參數傳遞給clearInterval()
,來讓setInterval()
方法停止重複執行。
!!小技巧
- 廢話不多說,先看代碼:
!!null == false //true
我們可以巧妙的使用!!
語法,將一個非布爾值變量值轉換成布爾值,就像上面的代碼顯示一樣!