JS继承定义与使用方法简单示例


Posted in Javascript onFebruary 19, 2020

本文实例讲述了JS继承定义与使用方法。分享给大家供大家参考,具体如下:

<script>
function Enemy() { 
  this.level = 50; 
  console.log("Enemy constructor"); 
}
Enemy.prototype.attack_play = function(){
  console.log("attack_play");
};
Enemy.prototype.wudiai = 100;
Enemy.wudiai = "1213";
Enemy.gongji = function(){
  console.log("gongji  asasasd "+ Enemy.wudiai);
}
function BossEnemy(){
  Enemy.call(this);
  console.log("Boss constructor");
}
// 写法1
// BossEnemy.prototype = {constructor: BossEnemy,};
// for(var i in Enemy.prototype){
//   BossEnemy.prototype[i] = Enemy.prototype[i];
// }
// 写法2
var a = function (){};
a.prototype = Enemy.prototype;
BossEnemy.prototype = new a();
BossEnemy.prototype.boss_attack = function(){
  console.log("boss_attack");
};
BossEnemy.staticFunc = function(){
  console.log("staticFunc called!");
};
var bos = new BossEnemy();
bos.boss_attack();
bos.attack_play();
BossEnemy.staticFunc();
console.log("==========================");
BossEnemy.prototype.attack_play = function(){
  Enemy.prototype.attack_play.call(this);
  console.log("BossEnemy attack play!");
}
bos.attack_play();
console.log("*****************************");
// 写法三 js6
class BingEnemy extends Enemy{
  constructor(){
    super();
    this.flag = true;
    this.name = "通天教主";
    this.level = 100;
  }
  static staticFunc(){
    console.log("static func called!");
  }
  get BingName(){
    return this.name;
  }
  set BingName(value){
    this.name = value;
  }
};
BingEnemy.haha ="123";
let bing = new BingEnemy();
console.log(bing);
BingEnemy.staticFunc();
bing.attack_play();
console.log(bing.BingName);
bing.BingName = "jade";
console.log(bing.BingName);
//console.log(BingEnemy.wudi);
console.log("============================");
</script>

运行结果:

JS继承定义与使用方法简单示例

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试上述代码运行效果。

更多关于JavaScript相关内容可查看本站专题:《JavaScript常用函数技巧汇总》、《javascript面向对象入门教程》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
表单提交时自动复制内容到剪贴板的js代码
Mar 16 Javascript
基于JQuery的cookie插件
Apr 07 Javascript
使用PHP+JQuery+Ajax分页的实现
Apr 23 Javascript
jQuery实现的一个自定义Placeholder属性插件
Aug 11 Javascript
js行号显示的文本框实现效果(兼容多种浏览器 )
Oct 23 Javascript
js中遍历Map对象的方法
Jul 27 Javascript
JS实现title标题栏文字不间断滚动显示效果
Sep 07 Javascript
js从数组中删除指定值(不是指定位置)的元素实现代码
Sep 13 Javascript
Bootstrap模态框禁用空白处点击关闭
Oct 20 Javascript
SelectPage v2.4 发布新增纯下拉列表和关闭分页功能
Sep 07 Javascript
vue分页器组件编写方法详解
Jun 28 Javascript
基于JavaScript实现简单的轮播图
Mar 03 Javascript
深入浅析golang zap 日志库使用(含文件切割、分级别存储和全局使用等)
Feb 19 #Javascript
vue中实现回车键登录功能
Feb 19 #Javascript
Vue中实现回车键切换焦点的方法
Feb 19 #Javascript
整理 node-sass 安装失败的原因及解决办法(小结)
Feb 19 #Javascript
Vue常用的全选/反选的示例代码
Feb 19 #Javascript
详解node和ES6的模块导出与导入
Feb 19 #Javascript
JS实现分页导航效果
Feb 19 #Javascript
You might like
超人钢铁侠联手合作?美漫作家呼吁DC漫威合作联动以抵抗疫情
2020/04/09 欧美动漫
反射调用private方法实践(php、java)
2015/12/21 PHP
如何使用PHP给图片加水印
2016/10/12 PHP
javascript下arguments,caller,callee,call,apply示例及理解
2009/12/24 Javascript
JavaScript Event学习第九章 鼠标事件
2010/02/08 Javascript
node.js中的fs.readFileSync方法使用说明
2014/12/15 Javascript
jquery实现的代替传统checkbox样式插件
2015/06/19 Javascript
JS实现获取键盘按下的按键并显示在页面上的方法
2015/11/04 Javascript
JavaScript数据绑定实现一个简单的 MVVM 库
2016/04/08 Javascript
详解用node编写自己的cli工具
2017/05/23 Javascript
前端开发不得不知的10个最佳ES6特性
2017/08/30 Javascript
基于原生js运动方式关键点的总结(推荐)
2017/10/01 Javascript
浅谈Node.js之异步流控制
2017/10/25 Javascript
浅谈如何通过node.js对数据进行MD5加密
2018/05/16 Javascript
vue 实现特定条件下绑定事件
2019/11/09 Javascript
深入理解Antd-Select组件的用法
2020/02/25 Javascript
[37:37]DAC2018 4.4 淘汰赛 Optic vs Mineski 第二场
2018/04/05 DOTA
python操作摄像头截图实现远程监控的例子
2014/03/25 Python
python计算牛顿迭代多项式实例分析
2015/05/07 Python
Python面向对象程序设计多继承和多态用法示例
2019/04/08 Python
Python数据类型之列表和元组的方法实例详解
2019/07/08 Python
PyCharm专业最新版2019.1安装步骤(含激活码)
2019/10/09 Python
Python 输出详细的异常信息(traceback)方式
2020/04/08 Python
Python实现快速大文件比较代码解析
2020/09/04 Python
canvas画图被放大且模糊的解决方法
2020/08/11 HTML / CSS
美国家具网站:Cymax
2016/09/17 全球购物
捷克时尚网上商店:OTTO
2018/03/15 全球购物
Currentbody澳大利亚:美容仪专家
2019/11/11 全球购物
Armor Lux法国官方网站:水手服装、成衣和内衣
2020/05/26 全球购物
幼儿园父亲节活动方案
2014/03/11 职场文书
学校运动会报道稿
2014/09/23 职场文书
国际残疾人日广播稿范文
2014/10/09 职场文书
党的群众路线教育实践活动个人整改落实情况汇报
2014/10/28 职场文书
办公室文员岗位职责
2015/02/04 职场文书
Python Django 后台管理之后台模型属性详解
2021/04/25 Python
零基础学java之带参数以及返回值的方法
2022/04/10 Java/Android