use*_*273 2 javascript jquery prototype-oriented
function Demo() {
this.show1 = function() { alert(1) }
}
Demo.prototype.show2 = function() { alert(2) }
var d = new Demo
d.show1()
d.show2()
Run Code Online (Sandbox Code Playgroud)
show1
并且show2
都可以提醒号码.
这两者有什么区别吗?
是的,如果在构造函数中初始化该方法,例如(this.method = function () {};
),则所有1000个对象实例都将具有一个函数对象作为自己的属性.
嗯,这是最轻量级的方法,假设你在某个构造函数的原型中有一个方法,并且你创建了1000个对象实例,所有这些对象都将在你的原型链中有你的方法,而且所有这些对象都只引用一个功能对象.
在第二种情况下,只有那些在Demo.prototype.show2 = function(){alert(2)}
获得代码后才能创建的对象.:)
你的代码
function Demo(){
this.show1 = function(){alert(1)}
}
Demo.prototype.show2 = function(){alert(2)}
var d = new Demo
d.show1()
d.show2()
Run Code Online (Sandbox Code Playgroud)
其他案例
function Demo(){
this.show1 = function(){alert(1)}
}
var d = new Demo
Demo.prototype.show2 = function(){alert(2)}
d.show1()
d.show2()
Run Code Online (Sandbox Code Playgroud)