[Essentials] 클래스(3) - ES6 Classes

일상 코딩·2022년 3월 28일
0

JavaScript

목록 보기
29/53
post-thumbnail

01.ES6 Classes

  • JavaScript는 prototype 기반의 프로그래밍 언어로 다른 안정적이고 신뢰도가 높은 객체 지향 프로그래밍 언어의 영향을 받아 Class라는 개념을 흉내내서 새로운 문법을 ES6에서 제공합니다.
  • prototype을 이용한 함수 생성
function User(first, last) {
	this.firstName = first;
	this.lastName = last;
}

User.prototype.getFullName = function () {
	return `${this.firstName} ${this.lastName}`
}  

const heropy = new User('Heropy','Park')

console.log(heropy); // User {firstName: "Heropy", lastName: "Park" }
console.log(orosy.getFullName()); // Heropy Park
  • ES6 Class를 이용한 class 생성
class User {
	constructor(first, last) {
		this.firstName = first;
		this.lastName = last;
	}

	getFullName() {
		return `${this.firstName} ${this.lastName}`
	}
}

const heropy = new User("Heropy", "Park");
const amy = new User("Amy", "Clarke");
const neo = new User("Neo", "Smith");

console.log(heropy); // User {firstName: "Heropy", lastName: "Park" }
console.log(amy.getFullName()); // Amy Clarke
console.log(neo.getFullName()); // Neo Smith
  • constructor는 클래스의 인스턴스 객체를 생성하고 초기화하는 특별한 메서드입니다.
  • Java의 생성자 같은 느낌?
profile
일취월장(日就月將) - 「날마다 달마다 성장하고 발전한다.」

0개의 댓글