JS原型与继承操作示例
本文实例讲述了JS原型与继承操作。分享给大家供大家参考,具体如下:
<script> var Beverage = function(){}; Beverage.prototype.boilWater = function(){ console.log("把水煮沸"); }; Beverage.prototype.brew = function(){ throw new Error("子类必须重写该方法"); }; Beverage.prototype.pourInCup = function(){ throw new Error("子类必须重写该方法"); }; Beverage.prototype.addCondiments = function(){ throw new Error("子类必须重写该方法"); }; Beverage.prototype.customerWantsCondiments = function(){ return true; }; Beverage.prototype.init = function(){ this.boilWater(); this.brew(); this.pourInCup(); if(this.customerWantsCondiments){ this.addCondiments(); } }; var Coffee = function(){}; Coffee.prototype = new Beverage();//继承父类Beverage Coffee.prototype.boilWater = function(){ console.log("把水煮沸"); }; Coffee.prototype.brew = function(){ console.log("用沸水冲泡咖啡"); }; Coffee.prototype.pourInCup = function(){ console.log("把咖啡倒进杯子"); }; Coffee.prototype.addCondiments = function(){ console.log("加糖和牛奶"); }; var Tea = function(){}; Tea.prototype = new Beverage();//继承父类Beverage Tea.prototype.boilWater = function(){ console.log("把水煮沸"); }; Tea.prototype.brew = function(){ console.log("用沸水浸泡茶叶"); }; Tea.prototype.pourInCup = function(){ console.log("把茶水倒进杯子"); }; Tea.prototype.addCondiments = function(){ console.log("加入柠檬"); }; Tea.prototype.customerWantsCondiments = function(){ return window.confirm("请问需要加调料吗?"); }; var coffee = new Coffee();//实例化Coffee coffee.init(); var tea = new Tea();//实例化Tea tea.init(); </script>
这里使用在线HTML/CSS/JavaScript代码运行工具:http://tools.jb51.net/code/HtmlJsRun测试运行结果如下:
更多关于JavaScript相关内容还可查看本站专题:《javascript面向对象入门教程》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》
希望本文所述对大家JavaScript程序设计有所帮助。
相关文章
layer弹出框确定前验证:弹出消息框的方法(弹出两个layer)
今天小编就为大家分享一篇layer弹出框确定前验证:弹出消息框的方法(弹出两个layer),具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2019-09-09JavaScript使用Math.Min返回两个数中较小数的方法
这篇文章主要介绍了JavaScript使用Math.Min返回两个数中较小数的方法,涉及javascript中Math.Min方法的使用技巧,非常具有实用价值,需要的朋友可以参考下2015-04-04JavaScript中定时器setTimeout()和setInterval()的用法
本文详细讲解了JavaScript中定时器setTimeout()和setInterval()的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2022-06-06Bootstrap table学习笔记(2) 前后端分页模糊查询
这篇文章主要为大家分享了Bootstrap table学习笔记,前后端分页模糊查询,具有一定的参考价值,感兴趣的小伙伴们可以参考一下2017-05-05
最新评论