mo1lusca의 블로그
[Unifox] - JavaScript 3차시 본문
동아리 시간에 배운 JS에 대해 정리하겠다.
객체 - 프로퍼티와 메서드로 이루어진 구조체
C++에서의 구조체와 비슷한 개념이다
중괄호로 프로퍼티와 메서드들을 감싸 하나의 변수로 선언한다.
const user = {
name = "User",
age = "123",
gender = "F",
sayhello(){
console.log("hello");
}
};
name, age, gender는 객체의 속성을 나타내느 프로퍼티이고
sayhello는 객체의 동작을 나타내는 메서드이다. (해당 객체 전용 함수라고 생각하면 편하다)
화살표함수 - function 키워드 없이 =>로 선언되는 함수
익명함수이기 때문에 재사용이 불가능하다.
C++의 람다함수와 같다.
자체적인 this가 없고, 자신이 속한 외부 스코프의 this를 가져다 쓴다..
const user = {
name : "mollusca",
sayName(){
return "내이름은 " + this.name + "입니다";
}
}
이렇게 name프로퍼티와 sayName메서드가 선언된 객체가 있다고 하자.
sayName 메서드 내에서는 this를 통해 자신의 name프로퍼티를 가져온다.
const user = {
name : "mollusca",
sayName: () => {
return "내이름은 " + this.name + "입니다";
}
}
메서드를 화살표함수로 바꿔버리면??
this는 더이상 자신이 아니라 외부 스코프의 무언가를 가리킨다..
이러한 이유때문에 객체의 메서드를 정의할 때에는 화살표함수를 잘 사용하지 않는다.
객체지향너무좋아요
'Unifox' 카테고리의 다른 글
| [Unifox] - Node.js 1,2차시 (3) | 2025.08.10 |
|---|---|
| [Unifox] - JavaScript 4차시 (2) | 2025.07.29 |
| [Unifox] - JavaScript 2차시 (1) | 2025.07.25 |
| [Unifox] - JavaScript 1차시 (1) | 2025.07.24 |
| [Unifox] - 트리 (0) | 2025.07.09 |