原创 複習ES6以後的一些特性

String Template Strings 連接String更方便直觀。使用反引號包括要生成的String,使用${}包括具體變量。 var name = "Yixuan"; var email = "[email protected]

原创 【理解chrome開發者工具】 part2 網絡,性能與內存

網絡 Network 瀑布流 隨着網頁的加載,每個HTTP請求都會是瀑布流中的一條。第一條都是文件document的加載,當文件被解析,隨後通常是CSS文件的加載。和寫在HTML文件中的標籤中的順序是一樣的。但瀏覽器會做一些優化,比如會降低

原创 【理解chrome開發者工具】 part1 編輯與調試

簡單複習各個面板 Elements 瀏覽DOM樹,瀏覽樣式。 Console 一個REPL。 小技巧: 在任何非Console面板中,按ESC可以調出一個小的Console窗口,方便開發者Debug。 Sources 類似一個文本編輯器。右

原创 this解析

每個函數的this是在調用的時候被綁定的,完全取決於函數的調用位置。表現特徵有點像動態作用域,從就近查找調用棧,來判斷this指向誰。 1. 默認綁定 (全局環境) var a = 2; function foo(){ consol

原创 理解AJAX

先參考MDN的什麼是AJAX AJAX是異步的JavaScript和XML(Asynchronous JavaScript And XML)。簡單點說,就是使用 XMLHttpRequest 對象與服務器通信。 它可以使用JSON,XML

原创 理解節流與防抖

節流 Throttling 節流限制了一個函數可以在短時間內被調用的次數。可以這樣形容:在一毫秒內最多執行此函數 1 次。 Throttling enforces a maximum number of times a function c

原创 理解setState(),異步還是同步?

state state的存在是爲了動態改變組件,比如根據不同的用戶操作和網絡請求,來重新渲染組件。 setState()是React給我們的一個API,用來改變或定義state。 setState()的批量操作(batching) 在一個事