강의 정리
class
-template
-no data
<붕어빵 틀>
object
-instance of a class
-data in
<틀에 찍어 만든 붕어빵>
예제
class Person {
//constructor
constructor(name, age) {
//fields
this.name = name;
this.age = age;
}
//methods
speak() {
console.log(`${this.name}: hello!`);
}
}
//오브젝트 생성
const ellie = new Person("ellie", 20);
console.log(ellie.name);
console.log(ellie.age);
ellie.speak();
/*result
ellie
20
ellie: hello! */
getter와 setter
getter: 값을 받음. 메모리를 위해 key 앞에 _를 붙여줌
setter: 값을 받아서 설정함
class User {
constructor(firstName, lastName, age) {
this.firstName = firstName;
this.lastName = lastName;
this.age= age;
}
//getter : 값을 받음
get age() {
//메모리를 위해 key 앞에 _를 붙여줌
return this._age
}
//setter : 값을 받아서 설정함
set age(value) {
if(value < 0) {
throw Error ('age can not be negative')
}
this._age = value;
}
}