1.包装类
2.原型
3.Object.create()
4.this和call
5.闭包
6.引用值的类型转换
7.深度克隆
8.预编译
1.封装一个type方法,要求完全分辩出来每一个要传进去的数据的类型
2.数组去重(这是工具方法 tool.js)
1.arguments是类数组
2.类数组是怎样构成的
3.强行让类数组调用push方法
4.数组作业
可以改变数组的方法
1.push
2.pop
3.shift
4.unshift
5.reverse
6.splice
7.sort
不可以改变原数组的方法
8.concat
9.toString
10.slice
11.split
12.join
1.数组的定义
2.数组的读和写
1.三目运算符
2.用三目运算符简化"深度克隆"
CLONE
1.浅层克隆
2.深层克隆
1.arguments.callee
2.function.caller
1.函数预编译过程 this —> window
2.全局作用域里 this —> window
3.call/apply 可以改变函数运行时this指向
4.obj.func();(func()里面的this指向obj)
5.this笔试题讲解,非常经典到一道题
1.查看属性 obj.prop、obj["prop"]
2.对象的枚举 for in、hasOwnProperty()、in、instanceof
3.区分数组、对象的三种方法constructor、instanceof、toString()
1.命名空间:管理变量,防止污染全局,适用于模块化开发
2.闭包的第四点应用,模块化开发,防止污染全局变量
3.思考问题:如何实现链式调用模式(模仿jquery)
继承发展史
1.传统形式
2.借用构造函数
3.共享原型
4.圣杯模式
5.闭包第三点作用:"可以实现封装,属性私有化"