5.2 编程题

常用方法

  1. 字符串是否同构。P2

  2. 数组去重。P5, P78

  3. 对象深度克隆的简单实现。P2.67

  4. 写一个深度拷贝,P84

  5. assign 的深拷贝。P2.117

  6. 实现 JS 中所有对象的深度克隆(包装对象,Date 对象,正则对象)。P2.74

  7. 深浅拷贝的区别和实现,P2-100

  8. JS 监听对象属性的改变。P2.67

  9. 如何实现一个私有变量,用 getName 方法可以访问,不能直接访问。P2.67

运行时

  1. 手写 call, apply, bind 函数。P11

  2. 自己实现一个 bind 函数。P2.67

  3. 写一个 newBind 函数,完成 bind 的功能。P2.105

  4. 手写 async, await。P13

  5. 将原生的 ajax 封装成 promise。P2.67

  6. 实现一个 once 函数,传入函数参数只执行一次。P2.67

  7. 用 setTimeout 来实现 setInterval。P2.67

综合应用

  1. 九九乘法表。P7

  2. 已知两趟排序后的结果,问采用的哪种排序算法。P16

  3. JS 全排列,P81

  4. 写个函数,可以转化下划线命名到驼峰命名,P100

  5. 计算一年中有多少周?

DOM 相关

  1. 轮播的实现原理

  2. 简单实现 Node 的 Events 模块。P2.76

Last updated