From 71990510a3d49e6b0c19f9deb9ce5bb8d563f6b0 Mon Sep 17 00:00:00 2001 From: tedjmzhang Date: Fri, 14 Jun 2024 18:02:22 +0800 Subject: [PATCH] webpack1 --- ...237\345\236\213\351\223\276\350\257\264\346\230\216.md" | 7 +++++++ src/frontend/library/webpack/index.md | 1 + 2 files changed, 8 insertions(+) diff --git "a/src/frontend/javascript/\345\216\237\345\236\213\351\223\276\350\257\264\346\230\216.md" "b/src/frontend/javascript/\345\216\237\345\236\213\351\223\276\350\257\264\346\230\216.md" index 3faec3a..e4f5a23 100644 --- "a/src/frontend/javascript/\345\216\237\345\236\213\351\223\276\350\257\264\346\230\216.md" +++ "b/src/frontend/javascript/\345\216\237\345\236\213\351\223\276\350\257\264\346\230\216.md" @@ -1,6 +1,13 @@ --- title: 原型链 --- + +## 说明: +每一个函数function都一个一个prototype属性,指向函数的原型。 +通过new function生成的实例instance,包含一个constructor属性指向构造函数function,包含一个__proto__属性指向function.prototype。 +所以有instance.__proto__ === function.prototype, instance.constructor === function。 +通过class extends parentClass集成调用super的时候,相当于是new parentClass,并且将生成的Instance的__proto__指向新生成的new parentClass + ### 10.原型链实现继承 不搞那些概念性的东西,直接说结论了,实现继承的方式就是: ***将第一个构造函数的原型等于第二个构造函数的实例,然后第一个构造函数的所有实例都会拥有第二个构造函数的所有自有属性以及原型属性*** diff --git a/src/frontend/library/webpack/index.md b/src/frontend/library/webpack/index.md index 103429a..3b749ee 100644 --- a/src/frontend/library/webpack/index.md +++ b/src/frontend/library/webpack/index.md @@ -3,6 +3,7 @@ ## 带着问题看源码 1. 如何进行依赖收集,循环依赖如何处理 2. webpack将源码转换成ast是loader干的活,还是webpack内部干的 +webpack内部原生支持转换javascript(使用acorn作为parser), 3. webpack如此多的hooks都放在了解析的哪一步 4. webpack的plugins有没有执行顺序,如果有的话,前后那个为准