美文网首页
JS提高篇

JS提高篇

作者: 翌凌枫 | 来源:发表于2019-04-11 09:10 被阅读0次

    JS还有很多很多东西要学习了解。js是基于原型的OOP语言,想进一步了解纯的OOP思想,推荐了解一下JAVA。JAVA他本身除了是一个纯OOP语言之外,还有很多后台开发的东西可以一拼了解。然后关于构造函数,原型,实例等等之间的联系需要搞的明白一点。 

一、构造器(constructor) 

    1、constructor始终指向创建当前对象的构造(初始化)函数。 

    http://www.cnblogs.com/jikey/archive/2011/05/13/2045005.html 

    2、每个函数都有一个默认的属性prototype,而这个prototype的constructor默认指向这个函数

    http://blog.csdn.net/kittyjie/article/details/4380918

    其实在JS中构造器就是函数,函数就是构造器,对象实例就是通过var obj=new 函数();这种形式新建出来的实例。区别这些,在说prototype和constructor。从上面的英文中可以看出,prototype是个对象,里面定义了一个constructor,那么我们可以推论出,constructor是对象实例的属性!而不是函数(构造器)的属性。反过来,prototype是函数(构造器)的属性,而不是实例的属性!

    我要强调一点就是__proto__是实例和Person.prototype之间的关系,而constructor是实例和Person之间的关系

http://blog.csdn.net/a569171010/article/details/7467514

    他们的关系:

    instance -> __proto__ -> person.prototype -> constructor <- person.prototype -> function Person(){} -> Object() -> window 

http://www.cnblogs.com/o-andy-o/archive/2012/11/20/2778260.html

http://ejohn.org/apps/learn/#1

    2. prototype

    一、什么是原型(prototype)

    1、prototype本质上还是一个JavaScript对象;

    2、每个函数都有一个默认的prototype属性;

    3、通过prototype我们可以扩展Javascript的内建对象

http://blog.csdn.net/a569171010/article/details/7467514

http://www.iteye.com/topic/195409

http://stauren.net/log/eggxfygvg.html

    二. 原型链: 常用原型来实现继承,其基本思想是利用原型让一个引用类型继承另一个引用类型的属性和方法。简单说,构造函数、原型和实例的关系:每个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针。假如我们让原型对象等于另一个类型的实例。那结果将是:此时的原型对象将包含一个指向另一个原型的指针,相应地,另一个原型中也包含着一个指向另一个构造函数的指针。假如另一个原型又是另一个类型的实例,那么上述关系成立,如此层层递进,就构成了实例与原型的链接。这就是原型链的基本概念。

http://blog.endlesscode.com/2010/01/23/javascript-prototype-chain/

http://www.cnblogs.com/ziyunfei/archive/2012/10/15/2723963.html

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/JavaScript_Overview?redirectlocale=en-US&redirectslug=JavaScript%2FGuide%2FJavaScript_Overview

https://developer.mozilla.org/zh-CN/docs/JavaScript/Guide

http://blog.csdn.net/siczxw555/article/details/6138428

http://www.cn-cuckoo.com/2007/08/01/understand-javascript-closures-72.html

http://www.zhuoda.org/lunzi/101543.html

3. 闭包

http://www.cnblogs.com/luluping/archive/2009/05/27/1490551.html

http://www.cnblogs.com/xiaoruoen/archive/2011/09/23/2185832.html

http://ghsky.com/2010/11/deep-into-javascript-closure-part-two.html

http://www.felixwoo.com/archives/247

http://www.cnblogs.com/hh54188/archive/2012/03/01/2374921.html

http://blog.csdn.net/a569171010/article/details/7484125

http://bbs.51js.com/viewthread.php?tid=79018&extra=&highlight=%2Bwinter&page=1

https://developer.mozilla.org/zh_tw/Core_JavaScript_1.5_%E6%95%99%E5%AD%B8/%E9%96%89%E5%8C%85%E7%9A%84%E9%81%8B%E7%94%A8

4. call,apply

http://topic.csdn.net/u/20081209/23/0823c850-5a56-421e-8922-fa35b26a517a.html

http://www.cnblogs.com/treasurelife/archive/2008/03/05/1092251.html

5. function

http://desert3.iteye.com/blog/1198400

http://chillwarmoon.iteye.com/blog/77123

http://software.intel.com/zh-cn/articles/javascript-first-class-citizen-function/?cid=sw:prccsdn229032

http://www.cn-cuckoo.com/main/wp-content/uploads/2009/12/named-function-expressions-demystified.html#introduction

6. js扩展的一些知识点: 

http://www.cn-cuckoo.com/main/wp-content/uploads/2009/12/named-function-expressions-demystified.html#introduction

    命名函数表达式探秘

http://bbs.51js.com/viewthread.php?tid=85245&highlight=scope

    Scope Chain的问题

http://bbs.51js.com/viewthread.php?tid=83841&highlight=%D7%F7%D3%C3%D3%F2

    try catch作用域的疑问

http://bbs.51js.com/viewthread.php?tid=85310&highlight=%D7%F7%D3%C3%D3%F2

    变量作用域和词法作用域的区别

http://hax.iteye.com/blog/104393

    关于JScript 5.6及其之前(IE6)引擎的创建对象的性能问题

http://bbs.51js.com/viewthread.php?tid=83190&extra=page%3D2%26amp;filter%3Ddigest

    JScript下Array对象的性能问题

http://bbs.51js.com/viewthread.php?tid=83586&extra=page%3D1&page=1

    为为什么不用with

http://bbs.51js.com/viewthread.php?tid=79018&extra=&highlight=%2Bwinter&page=1

    JS引擎的Closure测试

http://bbs.51js.com/viewthread.php?tid=74299&highlight =

    转贴Aimingoo:JavaScript面向对象的支持

http://bbs.51js.com/viewthread.php?tid=77398&highlight =

    用functional思想编写js一例——缓动效果

https://developer.mozilla.org/zh-CN/docs/JavaScript/Guide/Details_of_the_Object_Model

    对象模型的细节 

自学笔记,本文转载于-----http://www.cnblogs.com/jikey/p/3604459.html

相关文章

  • JS提高篇

    JS还有很多很多东西要学习了解。js是基于原型的OOP语言,想进一步了解纯的OOP思想,推荐了解一下JAVA。JA...

  • 惰性函数

    今天啊看到一篇讲js性能优化---惰性函数的文章,之前没听过这个。 主要应用在提高js的执行效能上,主要也是应用在...

  • 最新web前端相关课程学习链接

    js基础篇 js进阶篇 js高级篇 vue基础篇 vue高级篇 react基础 react高级 Nodejs基础 ...

  • TypeScript记录

    使用场景: 大型项目或者多人协作优点:提高开发效率,提高项目健壮性TS vs JS是JS的超集,遵循JS的语法和语...

  • JS零碎知识总结

    =============================================== JS篇 ①JS 垃...

  • 遇到文字和数字字母截取长度不一致问题

    js篇 css篇

  • JS优雅写法记录

    1、ES6语法篇 2、js简洁写法 3、js数组篇

  • vue中使用lodash

    介绍 Lodash是一个意在提高开发者效率,提高JS原生方法性能的JS库。简单的说就是,很多方法lodash已经帮...

  • 提高篇

  • 前端性能优化

    js性能小贴士——优化循环 前端网页与js性能优化 我总结的js性能优化的小知识 提高 web 应用性能之 Jav...

网友评论

      本文标题:JS提高篇

      本文链接:https://www.haomeiwen.com/subject/qhsziqtx.html