留给自己看的题
题目大部分来自 木易杨的每天一道题面试题 和 前端 100 问
-
有以下 3 个判断数组的方法,请分别介绍它们之间的区别和优劣Object.prototype.toString.call() 、 instanceof 以及 Array.isArray()
-
下面代码输出什么
var a = 10; (function () { console.log(a) a = 5; console.log(window.a) var a = 20; console.log(a) })()
-
实现一个 sleep 函数,比如 sleep(1000) 意味着等待1000毫秒,可从 Promise、Generator、Async/Await 等角度实现
-
输出以下代码的执行结果并解释为什么
var a = {n: 1}; var b = a; a.x = a = {n: 2}; console.log(a.x) console.log(b.x)
-
[隐式转换与[ToPrimitive]](#40)
- 手写防抖
- 手写节流
- 将数组扁平化并去除其中重复数据,最终得到一个升序且不重复的数组
- 根据以下要求,写一个数组去重函数(蘑菇街)
- 如果实现一个 new
- 请把俩个数组 [A1, A2, B1, B2, C1, C2, D1, D2] 和 [A, B, C, D],合并为 [A1, A2, A, B1, B2, B, C1, C2, C, D1, D2, D]
- 简单改造下面的代码,使之分别打印 10 和 20
- 分步骤实现 A+ 规范的 Promise
- 使用迭代的方式实现 flatten 函数
- 实现 (5).add(3).minus(2) 功能(Number里的this和this.value)
- 某公司 1 到 12 月份的销售额存在一个对象里面