ES6에 추가된 스펙, Class

개발 및 관리/Javascript 2022. 3. 18. 22:28 posted by HighLighter
반응형


const User = function (name, age) {
  this.name = name;
  this.age = age;
  this.showName = function () {
    console.log(this.name);
  };
};

const mike = new User("Mike", 30);

class User2 {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
  showName() {
    console.log(this.name);
  }
}

const tom = new User2("Tom", 19);

------------------------------------------------------------------------------------------

const User = function (name, age) {
  this.name = name;
  this.age = age;
  //this.showName = function () {
    //console.log(this.name);
  //};
};

User.prototype.showName = function() {
  console.log(this.name);
};

const mike = new User("Mike", 30);

class User2 {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
  showName() {
    console.log(this.name);
  }
}

const tom = new User2("Tom", 19);

------------------------------------------------------------------------------------------

const User = function (name, age) {
  this.name = name;
  this.age = age;
  //this.showName = function () {
    //console.log(this.name);
  //};
};

User.prototype.showName = function() {
  console.log(this.name);
};

//const mike = new User("Mike", 30);
const mike =  User("Mike", 30);

class User2 {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
  showName() {
    console.log(this.name);
  }
}

//const tom = new User2("Tom", 19);
const tom =  User2("Tom", 19);

------------------------------------------------------------------------------------------

const User = function (name, age) {
  this.name = name;
  this.age = age;
  //this.showName = function () {
    //console.log(this.name);
  //};
};

User.prototype.showName = function() {
  console.log(this.name);
};

const mike = new User("Mike", 30);

class User2 {
  constructor(name, age) {
    this.name = name;
    this.age = age;
  }
  showName() {
    console.log(this.name);
  }
}

const tom = new User2("Tom", 19);


for(const p in mike){
  console.log(p);
}

for(const p in tom){
  console.log(p);
}

//***********************************************************************************************************************

//***********************************************************************************************************************

Class : 상속

//extends

class Car {
  constructor(color) {
    this.color = color;
    this.wheels = 4;
  }
  drive() {
   console.log("drive..");
  }
  stop() {
    console.log("STOP!");
  }
}

class Bmw extends Car {
  park() {
    console.log("PARK");
  }
}

const z4 = new Bmw("blue");

-------------------------------------------------------------------

// Class : method overriding[1]

class Car {
  constructor(color) {
    this.color = color;
    this.wheels = 4;
  }
  drive() {
   console.log("drive..");
  }
  stop() {
    console.log("STOP!");
  }
}

class Bmw extends Car {
  park() {
    console.log("PARK");
  }
  stop() {
    console.log("OFF");
  }
}

const z4 = new Bmw("blue");

-------------------------------------------------------------------

// Class : method overriding[2]

class Car {
  constructor(color) {
    this.color = color;
    this.wheels = 4;
  }
  drive() {
   console.log("drive..");
  }
  stop() {
    console.log("STOP!");
  }
}

class Bmw extends Car {
  park() {
    console.log("PARK");
  }
  stop() {
    super.stop();
    console.log("OFF");
  }
}

const z4 = new Bmw("blue");

z4.stop();

-------------------------------------------------------------------

// Class : method overriding[3]

class Car {
  constructor(color) {
    this.color = color;
    this.wheels = 4;
  }
  drive() {
   console.log("drive..");
  }
  stop() {
    console.log("STOP!");
  }
}

class Bmw extends Car {
  constructor() {
    super();
    this.navigation = 1;
  }
  park() {
    console.log("PARK");
  }
}

const z4 = new Bmw("blue");

z4

-------------------------------------------------------------------

// Class : method overriding[3]

class Car {
  constructor(color) {
    this.color = color;
    this.wheels = 4;
  }
  drive() {
   console.log("drive..");
  }
  stop() {
    console.log("STOP!");
  }
}

class Bmw extends Car {
  constructor(color) {
    super(color);
    this.navigation = 1;
  }
  park() {
    console.log("PARK");
  }
}

const z4 = new Bmw("blue");

z4;

반응형