当前位置: 首页 > wzjs >正文

宜昌网站建设开发费用58同城成都网站建设名录

宜昌网站建设开发费用,58同城成都网站建设名录,asp医院网站源码破解版,大连网站搜索排名提升1. es5面向对象和继承 1.1 面向对象 1. 1.1 es6面向对象和继承 ES6 (ECMAScript 2015) 引入了基于类的面向对象编程语法,使得 JavaScript 的面向对象编程更加清晰和易于理解。 es6面向对象:<!DOCTYPE html> <html lang="en"> <head><meta …

1. es5面向对象和继承

1.1 面向对象

1. 1.1 es6面向对象和继承

ES6 (ECMAScript 2015) 引入了基于类的面向对象编程语法,使得 JavaScript 的面向对象编程更加清晰和易于理解。

es6面向对象:<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><script>1. 父类class Box{// 这个属性属于类的公有属性static b=2;、            // 给两个属性属于实例对象私有的属性a=1name;// 构造器constructor(name){this.name=name;}// 实例方法,这个方法属于实例对象的私有方法play(){console.log("play");}// 静态方法,这个方法属于类的公有方法static run(){console.log("run");}}// 继承2.子类继承父类class Ball extends Box{// 子类的实例化对象私有属性age// 构造器constructor(name,age){// super() 调用父类的构造器super(name);this.age=age;}// 实例方法play(){// super() 调用父类的实例方法super.play();console.log("play1");}// 静态方法,这个方法属于类的公有方法jump(){console.log("jump");}}</script>
</body>
</html>

1.1.2 es5 面向对象

在 ES6 之前,JavaScript (ES5) 使用基于原型的面向对象编程模式。虽然语法不如 ES6 的类语法直观,但功能同样强大。ES5使用函数来定义。

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><script>1. 定义父类function Box1(name){// 构造器this.a=1;this.name=name;}// 给实例化对象的原型上添加一个play方法Object.defineProperty(Box1.prototype,"play",{// value是方法体value(){console.log("play");}})// 给实例化对象的原型上添加一个属性aBox1.prototype.a=2;// 给Box1添加一个静态属性bBox1.b=2;// 给Box1添加一个静态方法runBox1.run = function(){console.log("run");}var obj=new Box1("kwj");console.log(obj);</script>
</body>
</html>

 1.2 es5的继承 

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title>
</head>
<body><script>1. 定义父类function Box1(name){// 构造器this.a=1;this.name=name;}// 给实例化对象的原型上添加一个play方法Object.defineProperty(Box1.prototype,"play",{// value是方法体value(){console.log("父类的play方法");}})// 给实例化对象的原型上添加一个属性aBox1.prototype.a=2;// 给Box1添加一个静态属性bBox1.b=2;// 给Box1添加一个静态方法runBox1.run = function(){console.log("父类的run方法");}2. 定义子类// 子类继承父类function Ball1(name,age){this.super(name);this.age=age;}// 给子类的原型上添加一个jump方法和一个play方法Object.defineProperties(Ball1.prototype,{jump:{value(){console.log("子类的jump方法");}},play:{value(){// super() 调用父类的实例方法this.superMethod("play");console.log("子类调用父类play");}}})
-----------------------------------重点区域--------------------------------------3.继承(重点)3.1 subClass:子类,supClass:父类function extend(subClass, supClass) {3,2保留子类的使用属性和方法var proto = subClass.prototype;3.3 把父类的的原型链设置为子类的原型链// Object.setPrototypeOf(subClass.prototype,supClass.prototype);subClass.prototype = Object.create(supClass.prototype);3.4 获取到子类的所有可枚举和不可枚举的属性var names = Reflect.ownKeys(proto);3.5 遍历子类所有的属性for (var i = 0; i < names.length; i++) {// 获取子类的对象属性的描述东西var desc = Object.getOwnPropertyDescriptor(proto, names[i]);Object.defineProperty(subClass.prototype, names[i], desc);}3.6 创建父类的superObject.defineProperties(supClass.prototype, {super: {value(...arg) {supClass.apply(this, arg);}},// 拷贝父类的原型上的方法superMethod: {value(method, ...arg) {supClass.prototype[method].apply(this, arg);}}})7. 实现静态方法的继承Object.setPrototypeOf(subClass, supClass);}extend(Ball1, Box1);----------------------------------------------------------------------------------4. 测试:实例化对象var a=new Box1("kwj1",20);console.log("父类:",a);a.play();var b=new Ba

文章转载自:

http://2b3cmje2.nbqwr.cn
http://xJz7Q2F0.nbqwr.cn
http://rvImGdiN.nbqwr.cn
http://WFMvELbA.nbqwr.cn
http://l8juqJxT.nbqwr.cn
http://FVpPOQjf.nbqwr.cn
http://Au5iZUPN.nbqwr.cn
http://sbW6xSQV.nbqwr.cn
http://phq1nwHv.nbqwr.cn
http://teVEt9qs.nbqwr.cn
http://GpwmCgI6.nbqwr.cn
http://syyXYsvq.nbqwr.cn
http://GXOaUsjN.nbqwr.cn
http://U1mG27LY.nbqwr.cn
http://ubP8qy79.nbqwr.cn
http://kxsvIugI.nbqwr.cn
http://ELXrFY2g.nbqwr.cn
http://iNdWWiZ9.nbqwr.cn
http://iv5vQ0bL.nbqwr.cn
http://aSpuBr3g.nbqwr.cn
http://lHsJQo8r.nbqwr.cn
http://4wa9CRs0.nbqwr.cn
http://7q4wiDtv.nbqwr.cn
http://RHEylPIU.nbqwr.cn
http://rhNAATG0.nbqwr.cn
http://jHl7ZuRr.nbqwr.cn
http://VqDsey18.nbqwr.cn
http://QGRgdq26.nbqwr.cn
http://hbtl41pu.nbqwr.cn
http://h7aqkkuo.nbqwr.cn
http://www.dtcms.com/wzjs/733284.html

相关文章:

  • 黑龙江 建设监理协会网站网站建设价格怎么算
  • 开封网站建设公司重庆点优建设网站公司吗
  • 做风险投资网站企业云平台管理系统
  • 哪些行业做网站推广的多外包加工网官网下载app
  • 沈阳网站托管公司网站风险怎么解决方案
  • 唐山正规做网站的公司深圳网络推广哪家好
  • 一键提交网站国外好看的教育类网站模板下载
  • 江西智能网站建设服务器配置参数详解
  • 有了域名搭建网站详细步骤在线设计平台帮助手册
  • 做民宿网站的系统可行性页面设计排版网站
  • 德持建设集团有限公司网站项目可行性报告怎样写
  • 龙岗网站制作设计费用
  • 济南网站推广效果商务网站模块设计时前台基础设施建设不包括
  • 网站运营要会什么技术站长字体
  • 网站静态页面生成在什么网站能帮人做ppt
  • 纺织网站制作123纺织网手机网站存储登录信息
  • 橙色系网站上海注销营业执照流程
  • .vip域名的网站排名公司门户网站开发价格
  • 网站建设上传图片不显示公司网站域名在哪里备案
  • 南京网站设计网站wordpress 默认html5
  • 标志设计公司有哪些深圳优化网站方法
  • 做外贸网站费用会员网站开发
  • 建站教程wpwordpress开源社区
  • 大良网站制作一流 北京网站建设
  • 新开最好的传奇网站定制型网站制作
  • 营山网站建设upscale wordpress
  • 怎么制作网页教程苏州seo关键词排名
  • 淄博高效网站建设找哪家免费模板简历下载
  • 网站制作协议书舆情分析报告案例
  • 上市企业网站建设企业网站的推广方法