js笔记7类 this,new,class,extends,super关键词

this关键字

稍微偷一下懒哈,用一下老师的课件哈。

通过call()和apply()方法调用函数,第一个实参是强制this指向的对象,其他实参才是传给形参的。

let obj1={a:1};
let obj2={a:2};
function f(c,d){
    console.log(this.a+c+d);
}
f.call(obj1,3,4);//8
f.apply(obj2,[3,4]);//9

new运算符与构造函数

new 构造函数名([实参])

function Hotel(rooms,booked){
    this.rooms=rooms;
    this.booked=booked;
}
let orangeHotel=new Hotel(50,20);
let homeHotel=new Hotel(100,50);

class关键字声明类

声明语法:class 类名{类体}

实例化(产生对象)语法:new 类名()

先声明,后使用

class Hotel{
    constructor()
    {this.name='酒店';}
}
let obj=new Hotel();
obj.name;

注意:es6中,创建每一个class类,都会有一个constructor()方法,该方法用于创建和初始化class创建对象的特殊方法

extends关键字

class Home extends Hotel{
    selfMedthod(){;}

}
let obj=new Home(10,3);
obj.rooms;
obj.selfMedthod();

super关键字

class orange extends Hotel{
    constructor(rooms,booked){
    super(rooms,booked);
    this.pool=true;
}}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值