prototype 对象是 js 实现面向对象的一个重要机制
每个函数也是一个对象(划重点),他们对应的类是 function ,每个函数对象都有一个子对象 prototype
prototype 代表了该函数的原型,还表示了一个类的属性的集合
当用 new 来生成一个对象时, prototype 对象的属性将会成为实例化的对象的属性
使用场景:
我们把所有方法都放在一个函数内部,每一次通过 new 一个对象的时候,新创建的对象都会对类的 this 上的属性进行复制,所以这些新创建的对象都会有自己的一套方法,这样做对内存消耗很大,我们可以通过原型的方式去处理
prototype对象是实现面向对象的一个重要机制。每个函数也是一个对象,它们对应的类就是function,每个函数对象都具有一个子对象prototype。
Prototype 表示了该函数的原型,prototype表示了一个类的属性的集合。当通过new来生成一个类的对象时,prototype对象的属性就会成为实例化对象的属性。
下面以一个例子来介绍prototype的应用,如图:
扩展资料
prototype给String类封装一个“日期验证”的代码
String.prototype.isDate = function(){
var regex = new RegExp("^[\d]([-|/])[\d]{1,2}([-|/])[\d]{1,2}$")
console.log(this)
return regex.exec(this)
}
var strValue = "12512412"
alert(strValue.isDate())
参考资料:百度百科 prototype