标签: 原型链
5 个内容
笔记(5)
本文阐述JavaScript Proxy中`receiver`参数的核心作用:代表发起操作的对象。主要解决原型链继承时getter/setter `this`绑定偏移问题。通过`Reflect.get(target, prop, receiver)`和`Reflect.set(target, prop, value, receiver)`正确绑定`this`至调用者。最佳实践:handler中始终传入`receiver`。
Elliot Yang·
18 浏览
JavaScript构造函数既是函数又是对象创建模板,需用`new`调用。`new`创建对象、绑定上下文、初始化属性并处理返回值。原型链实现继承,引擎优化属性查找。`new.target`检测实例化方式,避免内存泄漏。类是语法糖,私有字段是新提案。构造函数在框架和库中有广泛应用。
Elliot Yang·
140 浏览
本文深入探讨了 JavaScript 原型链,包括`__proto__`、`prototype`和相关方法。讨论了如何通过原型链实现继承,以及`Object.setPrototypeOf`和`Object.getPrototypeOf`的现代用法。同时,还介绍了`Symbol.hasInstance`等高级特性以及`Object.create()`的使用,强调了理解原型链对于掌握 JavaScript 对象和继承机制的重要性。
Elliot Yang·
112 浏览
本文介绍了构造函数与 `new` 操作符的使用。构造函数是命名以大写字母开头且通过 `new` 调用的函数。`new` 操作符创建新对象,并将 `this` 指向该对象,`new.target` 可用于判断函数是否通过 `new` 调用。文章还提供了 `new` 操作符的模拟实现。
Elliot Yang·
94 浏览