js记录

本文探讨了ES6新特性,包括Promise异步回调、Array.prototype.includes()、异步函数、Object.entries()与Object.values()等。同时介绍了字符串填充方法padStart和padEnd,symbol的使用,以及ES6的继承、静态方法、单例模式等高级概念。
摘要由CSDN通过智能技术生成

异步回调

function getData(resolve,reject){

    //ajax
    setTimeout(function(){
        var name='张三';
        resolve(name);

    },1000);

}

var p=new Promise(getData);


p.then((data)=>{

    console.log(data);
})

es7新特性Array.prototype.includes()

includes() 方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回false

异步函数(Async functions)
Object.entries()和Object.values()
字符串填充:padStart和padEnd

参考

symbol


es6里面的继承

class Person {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
  getInfo() {
    console.log(`姓名:${this.name} 年龄:${this.age}`);
  }
  run() {
    console.log('run')
  }
}
class Web extends Person { //继承了Person     extends          super(name,age);
  constructor(name, age, sex) {
    super(name, age); /*实例化子类的时候把子类的数据传给父类*/
    this.sex = sex;
  }
  print() {
    console.log(this.sex);
  }
}
var w = new Web('张三', '30', '男');
w.getInfo();

es6里面的静态方法

class Person {

  constructor(name) {

    this._name = name; /*属性*/
  }
  run() { /*实例方法*/

    console.log(this._name);
  }
  static work() { /*静态方法*/
    console.log('这是es6里面的静态方法');
  }
}
Person.instance = '这是一个静态方法的属性';


var p = new Person('张三');

p.run();
Person.work(); /*es6里面的静态方法*/

console.log(Person.instance);

es6里面的单例模式

class Db {

    static getInstance(){   /*单例*/

        if(!Db.instance){

            Db.instance=new Db();
        }
        return Db.instance;
    }

    constructor(){

        console.log('实例化会触发构造函数');

        this.connect();
    }

    connect(){

        console.log('连接数据库');
    }
    find(){
        console.log('查询数据库');
    }
}


var myDb=Db.getInstance();

myDb.find();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值