首页 > 其他 > 详细

ES6 对象

时间:2020-09-03 09:16:48      阅读:35      评论:0      收藏:0      [点我收藏+]

以前的定义类的方式

let  obj={};//字面式定义

function Obj(name,age){ 

this.name=name;

this.age=age;

}; 

Obj.prototype.showName(){}

通过函数,注意首字母最好大写

或者

Object.assign(Obj.prototype,{showName:function(){}})

 

let a=new Obj()

 

ES6 类(关键字class)

class Person{

constructor(name,age){

this.name=name;

this.age=age

};

showName:function(){

}

}

new Person()

  1还可以用变量

let aaa="strive";
class Person{

constructor(name,age){

this.name=name;

this.age=age

};

showName:function(){

}
[aaa](){

}

}

let person=new Person();
person.strive();或者  person[aaa]()

  class 没有预提升的功能

1.第一种情况
let  person=new Person()   这样会报错

class Person{

}

2:第二种情况


let person=new Person();这个是正确的。有预提升的功能


function Person(){


}

  class  里面还有取值函数(getter),设值函数(setter)

class Person{
   constructor(){

 }

 get aaa(){

      return "aaa的属性"
  }

set aaa(val){
   console.log("设置aaa的属性")

}


}

let p1=new Person();

    p1.aaa;这个就会调用get方法
    p1.aaa="asadsad";这样写就会调用set方法

  

 

ES6 对象

原文:https://www.cnblogs.com/yuaima/p/13605534.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!