09 2020 档案

摘要:super与实例没有什么关系,它本身有两个作用的,参考如下理解: 1.super可以当函数用。super作为函数调用时,表示父类的构造函数。示例: class Par { constructor() { this.num = 21; } } class Chil extends Par { cons 阅读全文
posted @ 2020-09-26 23:59 是桂 阅读(1386) 评论(0) 推荐(0) 编辑
摘要:ES5中的继承 1.JAVASCRIPT中的继承,不是真正意义上的面向对象继承,而是JS中特有的,和面向对象继承有点区别的,就是js的原型 2.利用构造函数 缺陷:不能继承原型的方法 解决:字类的prototype等于基类的实例(还是有一些缺点的) //利用构造函数,但是无法继承父类原型上的方法 f 阅读全文
posted @ 2020-09-25 00:59 是桂 阅读(188) 评论(0) 推荐(0) 编辑
摘要:简单的多态 多态: 1.同一个接口,在不同情况下做不一样的事情;相同的接口,不同的表现; 2.接口本身只是一组定义,实现都是子类里面;需要子类去实现的方法(子类只需重写与父类同名的方法,即可达到覆盖的效果),若子类有跟父类同名的方法,则会直接走子类的方法,不会走父类的; 3.非静态方法中,仍然子类可 阅读全文
posted @ 2020-09-25 00:29 是桂 阅读(847) 评论(0) 推荐(0) 编辑
摘要:extends 子类的继承 super(); 调用父类的构造方法,只能在子类中执行 继承可以让子类获得父类的方法 属性,可以扩充 增加新的方法 属性等 父类(基类)——被继承的类 子类——继承后的类 1.extends(关键字) 子类的继承 extends +要继承的类名 2.super(参数); 阅读全文
posted @ 2020-09-21 23:49 是桂 阅读(1868) 评论(0) 推荐(0) 编辑
摘要:1、Object.create()方法创建一个新对象,使用现有的对象来提供新创建的对象的__proto__。 var _this = Object.create(fn.prototype);这句代码的意思是fn的prototype属性内容作为新对象的原型内容。 2、apply方法会改变this的指向 阅读全文
posted @ 2020-09-19 01:20 是桂 阅读(234) 评论(0) 推荐(0) 编辑
摘要:name属性与new.target属性 name属性: 1、类.name,输出的是类的名字。 2、如果是在类表达式中,类有名字,那么输出结果是类的名字;类没有名字的话,那么输出结果会是表达式中变量或者常量的名称。 //name属性返回一个类的名字,在业务场景中基本上用不到的 class Person 阅读全文
posted @ 2020-09-18 23:41 是桂 阅读(598) 评论(0) 推荐(0) 编辑
摘要:当我们说new一个对象的时候,实际做了些什么, 可以参考下图理解 阅读全文
posted @ 2020-09-18 23:37 是桂 阅读(312) 评论(0) 推荐(0) 编辑
摘要:<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>getter与setter——音乐播放器例子 </title> <style type="text/css"> div{ font-size: 299x; } </style> < 阅读全文
posted @ 2020-09-18 00:07 是桂 阅读(201) 评论(0) 推荐(0) 编辑
摘要:1、这种可以不用实例化对象就能输出。 class Car{ constructor(){ } } Car.tool=4 console.log(Car.tool);//4 2、必须实例化后才能输出。但他们都是挂在类上的静态属性。 class Car{ constructor(){ Car.speed 阅读全文
posted @ 2020-09-16 00:03 是桂 阅读(586) 评论(0) 推荐(0) 编辑
摘要://类表达式 const Person1 = class{ constructor(){ console.log('aa') } } //也可以跟上类名P,但是变量P在class外部是访问不到的,在class内部是可以访问到的 const Person = class P{ constructor( 阅读全文
posted @ 2020-09-16 00:00 是桂 阅读(236) 评论(0) 推荐(0) 编辑
摘要:静态方法只能写在class内,constructor外。通过static关键字声明 静态属性只能写在class外,通过 类名.属性名 = 属性值 声明 //静态属性与静态方法(ES6明确规定,Class内部只有静态方法,没有静态属性 ) //1.不会被类实例所拥有的属性与方法,只是类自身拥有 //2 阅读全文
posted @ 2020-09-15 00:14 是桂 阅读(4042) 评论(0) 推荐(0) 编辑
摘要:<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>模拟一个音乐播放器</title> </head> <body> <div id="app"></div> <script> class AudioPlayer{ //从无到有生成 阅读全文
posted @ 2020-09-14 00:05 是桂 阅读(296) 评论(0) 推荐(0) 编辑
摘要:ES6提供了更接近传统语言的写法,引入了class(类)这个概念,通过class关键字,可以定义类。 //es6中声明一个类的方法,使用class关键字 class Car{ //构造函数的固定写法,类似于函数的简洁表示法const obj ={ a(){} } constructor(...arg 阅读全文
posted @ 2020-09-12 00:21 是桂 阅读(344) 评论(0) 推荐(0) 编辑
摘要:页面中有个板块,需要多张图片加载完之后才能进行显示 //页面中有个板块 需要多张图片加载完之后才能进行显示 const loadImg = (src) => { return new Promise( (resolve,reject) =>{ const img = new Image(); img 阅读全文
posted @ 2020-09-07 01:01 是桂 阅读(245) 评论(0) 推荐(0) 编辑
摘要://Promise.resolve()和Promise.reject()常用来生成已经被决议为失败或者成功的promise案例 //Promise.reject()简单一些,不管传给它什么值,它决议为失败后就会直接把这个值传递过来 一、Promise.resolve1.传递一个普通的值(比如字符串, 阅读全文
posted @ 2020-09-05 00:31 是桂 阅读(1793) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示