constructor函数

constructor函数—构造一个对象的函数
不允许以字面量的形式去添加属性的

  1. // es6 class
  2. // constructor函数--构造一个对象的函数
  3. class Person{
  4. constructor(name,age){
  5. this.name=name;
  6. this.age=age;
  7. }
  8. sayName(){
  9. console.log(this.name);
  10. }
  11. }
  12. // 不允许以字面量的形式去添加属性的
  13. Person.prototype = {
  14. sayAge(){
  15. console.log(this.age);
  16. }
  17. }
  18. var p = new Person("zhou",22);
  19. p.sayAge()

Object.assign

可以在原型上添加多个属性

  1. //Object.assign可以在原型上添加多个属性
  2. class Person{
  3. constructor(name,age){
  4. this.name=name;
  5. this.age=age;
  6. }
  7. sayName(){
  8. console.log(this.name);
  9. }
  10. }
  11. Object.assign(Person.prototype,{
  12. sayAge(){
  13. console.log(this.age);
  14. },
  15. show(){
  16. console.log("show");
  17. }
  18. })
  19. var p = new Person("zhou",22);
  20. console.log(p.constructor == Person);
  21. p.show()