总结写在前面:
①:带有protype:表示类的扩展,必须new后才能使用。
②:不带protype:属于静态方法,直接调用即可。
html代码:
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Title</title> 6 <script src="show.js"></script> 7 </head> 8 <body> 9 <script src="main.js"></script> 10 </body> 11 </html>
protype:
show.js代码:
1 window.meng = window.meng || {}; 2 (function () { 3 4 function Show(name) { 5 this._name=name; 6 } 7 Object.defineProperty(Show.prototype,"name",{ 8 get:function () { 9 return this._name; 10 } 11 }); 12 Show.prototype.showCloth=function () { 13 console.log(this.name+"穿着皮大衣"); 14 }; 15 16 meng.Show=Show; 17 18 19 })();
main.js代码:
1 (function () { 2 3 var per=new meng.Show("meng"); 4 per.showCloth(); 5 6 })();
效果:
输出meng穿着皮大衣。
no protype:
show.js代码:
1 window.meng = window.meng || {}; 2 (function () { 3 4 function Show(name) { 5 this._name=name; 6 } 7 Show.showName=function () { 8 console.log("静态方法"); 9 }; 10 11 meng.Show=Show; 12 13 14 })();
main.js代码:
1 (function () { 2 3 // var per=new meng.Show("meng"); 4 // per.showCloth(); 5 6 meng.Show.showName(); 7 })();
效果:
输出:静态方法。
自己的认知:带有protype的扩展方法在js里面举足轻重,必须学会,而又常用。
不带protype的静态方法,不喜欢用,感觉不符合面向对象的观念。
但有时候用用也未尝不可。各有千秋吧。
有某些特殊时候用了会有奇效。都记住吧。
myGitgub https://github.com/mfx55 希望我的博客能帮到你
今天的文章带pro和不带有什么区别_戴带代区别分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/51481.html