27-this绑定与OOP

9/6/2001

# 一. 总结this绑定方案(谈谈你对this的理解?)(重要)

# 二. 今天课堂中做过的题,再做一遍(重要,好多都是面试题)

# 三. new做了什么?使用原生JS模拟new的实现?(选做)

  • 如果你知道什么是原型链的话,可以使用原生js模拟new的实现。

# 四. 编写函数fn实现如下效果

let res = fn(1, 2)(3);
console.log(res); //=>6 1+2+3
1
2

# 五. 输出下⾯代码运⾏的结果

window.val = 1;
var json = {
    val: 10,
    dbl: function() {
        this.val *= 2;
    }
}
json.dbl();
var dbl = json.dbl;
dbl();
json.dbl.call(window);
alert(window.val + json.val);
1
2
3
4
5
6
7
8
9
10
11
12

# 六. 输出下⾯代码运⾏的结果

let obj = {
    fn: (function() {
        return function() {
            console.log(this);
        }
    })()
};
obj.fn();
let fn = obj.fn;
fn();
1
2
3
4
5
6
7
8
9
10

# 七. 输出下⾯代码运⾏的结果

(function() {
    var val = 1;
    var json = {
        val: 10,
        dbl: function() {
            val *= 2;
        }
    };
    json.dbl();
    alert(json.val + val);
})();
1
2
3
4
5
6
7
8
9
10
11

# 八. 遍历对象都有哪些方案?遍历数组都有哪些方案?

# 九. 创建对象都有哪些方案,都有哪些缺点?

# 十. 预习明天的原型和原型链内容

Last Updated: 12/25/2022, 10:02:14 PM