标签: Proxy
3 个内容
笔记(3)
本文阐述JavaScript Proxy中`receiver`参数的核心作用:代表发起操作的对象。主要解决原型链继承时getter/setter `this`绑定偏移问题。通过`Reflect.get(target, prop, receiver)`和`Reflect.set(target, prop, value, receiver)`正确绑定`this`至调用者。最佳实践:handler中始终传入`receiver`。
Elliot Yang·
18 浏览
本文介绍了使用`WeakMap`和`Proxy`实现简化版Vue3响应式系统的原理和实现。关键问题在于如何自动追踪依赖和避免内存泄漏。解决方案是利用`WeakMap`存储对象依赖关系,Proxy拦截get/set操作,实现依赖收集和触发。
Elliot Yang·
102 浏览
本文深入探讨了 WeakMap/WeakSet 的底层原理和高级应用。WeakMap/WeakSet 基于弱引用,不会阻止垃圾回收,常用于绑定私有状态、DOM 元素元数据、响应式系统和缓存。同时介绍了WeakRef/FinalizationRegistry的结合使用,并总结了使用陷阱和注意点。
Elliot Yang·
103 浏览