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