Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JavaScript 原型 和 闭包 对比和理解 #2

Open
ClarenceC opened this issue May 12, 2017 · 0 comments
Open

JavaScript 原型 和 闭包 对比和理解 #2

ClarenceC opened this issue May 12, 2017 · 0 comments

Comments

@ClarenceC
Copy link
Owner

ClarenceC commented May 12, 2017

JavaScript 原型 和 闭包 对比和理解

在我学习JavaScript过程序中总觉得原型和闭包是很相似的东西,总是很难区分什么时候该用什么时候不该使用.而很多项目中很多时候都使用闭包.网上面查阅过很多资料总结以下:
闭包:
优点作用:
1.易于创建对象,能私有化变量与方法..
2.调用实例变量,实例方法效率高,合适高频率操作实例.
3.IIFE立即执行,可以保存模块状态.

缺点:
1.使用过多会占用大量内存.
2.创建对象效率低下.
3.外部引用不利于,垃圾回收,长期占用引用.

原型:
优点作用:
1.易于创建对象,能私有化变量与对象.
2.易于创建实例,创建实例效率高,合适经常创建多实例的原型.
3.能私有化变量与方法.

缺点:
1.调用实例方法效率低下.
2.原型的对象的方法是存在对象的原型链中,寻址速度略慢.

参考 https://segmentfault.com/q/1010000004067464 黒之染
参考 (https://github.com/ClarenceC/knowledge/issues/2)
参考http://www.ruanyifeng.com/blog/2009/08/learning_javascript_closures.html 阮老师教程

原型通常会带着原型链:
image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant