首页 > 代码库 > Javascript设计模式系列一
Javascript设计模式系列一
定义类,方法赋值给prototype属性各种写法:
方法一:
1 <script type="text/javascript"> 2 ////定义Message类 3 var Message = function () { 4 } 5 ////添加方法 6 Message.prototype = { 7 Display: function (msg) { 8 ///弹出 9 alert(msg);10 }11 };12 13 ////实例化14 var msg = new Message()15 ////调用方法16 msg.Display(‘Hello World!‘);17 </script>
方法二:
<script type="text/javascript"> ////定义Message类 var Message = function () { } ////添加方法 Message.prototype.Display = function (msg) { ///弹出 alert(msg); } ////实例化 var msg = new Message() ////调用方法 msg.Display(‘Hello World!‘); </script>
方法三:
<script type="text/javascript"> ////给Function对象添加一个方法用于声明方法 Function.prototype.method = function (name, fn) { this.prototype[name] = fn; }; ////定义Message类 var Message = function () { } ////添加方法 Message.method(‘Display‘, function (msg) { ///弹出 alert(msg); }); ////实例化 var msg = new Message() ////调用方法 msg.Display(‘Hello World!‘); </script>
方法四:链式语法。
<script type="text/javascript"> ////给Function对象添加一个方法用于声明方法并且返回this值 Function.prototype.method = function (name, fn) { this.prototype[name] = fn; return this; }; ////定义Message类 var Message = function () { } ////添加方法 Message.method(‘Display‘, function (msg) { ///弹出 alert(msg); }).method(‘Print‘, function (msg) { ///弹出 alert(msg); }); ////实例化 var msg = new Message() ////调用方法 msg.Display(‘Hello World!‘); msg.Print(‘Hello World!‘); </script>
本文出自:Javascript设计模式。
Javascript设计模式系列一
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。