1 算法求top K出現頻率,可以使用桶排序。
2 後端數據結構轉換成更適合前端的數據結構是適配器模式。
3 下面使用slice複製類數組。
args = Array.prototype.slice.call(arguments)
4 async就是generator的語法糖。
5 (源碼)react組件實際就是ReactElement類型的js對象。
6 sort排序內部原理是插入排序和歸併排序的混合排序法。
7 加載與 require 是 同步 的,而 import 則會 異步 加載模塊。
8 前端處理大量數據可以放到webworker中。
9 滾動條可以使用防抖,也可以使用節流。在處理大數據的時候可以使用setTimeout來構造一個js緩衝器。
10 因爲 JavaScript 採用的是詞法作用域,函數的作用域在函數定義的時候就決定了。
而與詞法作用域相對的是動態作用域,函數的作用域是在函數調用的時候才決定的。
11 在進入執行上下文時,首先會處理函數聲明,其次會處理變量聲明,如果如果變量名稱跟已經聲明的形式參數或函數相同,則變量聲明不會干擾已經存在的這類屬性。
12 下面輸出是window對象,如果加個new則是foo對象
function foo() { console.log(this) } foo();
13 this指向。
14 閉包。
15 js裏一切皆爲對象,可以使用對象原型的方法,如數字可以使用tostring()方法。
16 一般用操作符單獨對對象進行轉換的時候,會優先調用valueof,如果是彈窗(alert)的話,直接調用toString方法。
17 模擬實現call