大白话-prototype属性

时间:2022-04-27
本文章向大家介绍大白话-prototype属性,主要内容包括==========先说结论=========、========= 再说怎么用 ===========、=========== 吐槽 =============、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

今天来聊聊javascript的prototype,

==========先说结论=========

--它是什么呢? 它是一个属性。 --谁的属性? 函数的属性,每个javascript的函数都会有一个prototype属性。 --它是做什么的? 用来给函数添加方法的。 就是由此函数通过new操作符创建出来的新对象会自动继承你添加的方法。

========= 再说怎么用 ===========

看代码(今天不抖了,先)

那个叫n1的空函数,就是构造函数, 通过prototype.popup(),给n1添加了popup方法, 这样以后所有通过new n1方式创建的新对象,都有了popup方法, 自定义的,多方便啊,

=========== 吐槽 =============

看了网上N多教程说prototype的,都什么静态啊,动态啊,创建啊, 原型链啊递归查找啊,找到Obj.prototype什么的,, 说的都对,都没错。 但问题是,我他妈的连prototype是什么,怎么用都不明白,这么多背后的原理怎么可能看得懂? 先怎么怎么用, 慢慢用熟练了,再看原理就好理解的多。

另外,每个对象都会有constructor属性更是简单的很,它是怎么个情况呢?

明细天说,,

好吧,一句话介绍constructor:

它就是个指向创建这个对象的函数,

完了。

代码就是:

p2.popup( p2.constructor );// n1()

给你看我最爱的一篇文章:web前面装逼指南