WEB/JavaScript
[JS] 자바스크립트의 객체
Kwon_
2021. 3. 22. 10:42
객체
객체란, 현실의 사물을 프로그래밍에 반영한 것이다.
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"'
위 생성자 함수를 통해서 생성한 두 개의 각각 이름과 성별이 다른 두개의 객체를 만들었다.