객체
객체란, 현실의 사물을 프로그래밍에 반영한 것이다.
var name = {
firstName = "gang",
lastName = "hodong"
};
name이라는 변수에 { }로 감싼 덩어리를 넣었다. 바로 이 덩어리가 객체이다.
여기서 fistName과 lastName은 Key가 되고 각각 gang과 hodong은 Value가 된다.
함수를 클래스처럼 사용하게 해주는 키워드 new
자바스크립트에서는 class가 없다. 하지만 그렇다고 하지만 그 기능을 대신하는 함수가 있다.
new 라는 생성자 함수를 사용한다면 함수를 클래스처럼 인스턴스를 생성할 수 있다.
사용 예시
function Person(name, gender) {
this.name = name;
this.gender = gender;
this.sayHello = function() {
alert(this.name + ' said "hello"');
}
this.... // 사람의 속성과 메소드를 더 정의할 수 있습니다.
}
위 처럼 생성자 함수를 만들었다. 하지만 기존에 알고있는 함수와는 다르게 함수의 이름 첫 부분(Person)을 대문자로 작성해야한다.
var zero = new Person('Zero', 'm'); // Person {name: 'Zero', gender: 'm'}
var hero = new Person('Hero', 'f'); // Person {name: 'Hero', gender: 'f'}
zero.sayHello(); // 'Zero said "hello"'
hero.sayHello(); // 'Hero said "hello"'
위 생성자 함수를 통해서 생성한 두 개의 각각 이름과 성별이 다른 두개의 객체를 만들었다.
'WEB > JavaScript' 카테고리의 다른 글
[JS ES6+] var, let, const 차이점과 용도 (0) | 2021.03.22 |
---|---|
[JS] DOM(Document Object Model)에 대해서 알아보자 (0) | 2021.03.22 |
[JS] 자바스크립트 함수란 ? (0) | 2021.03.19 |
[JS] for in, for of 문? (0) | 2021.03.19 |
[JS] 식별자가 뭐지? (0) | 2021.03.19 |