JavaScript - 객체

노홍기·2022년 5월 7일
0

JavaScript-객체

목록 보기
1/2

객체

객체는 이름 붙은 값들의 모음이다. 보통 이 이름 붙은 값들을 객체의 프로퍼티라고 부른다. 객체 프로퍼티를 참조하려면 객체 이름을 쓰고 이어서 마침표와 프로퍼티 이름을 적어주면 된다.

예를 들어 image라는 이름의 객체에 width와 height라고 이름 붙은 프로퍼티 두 개가 있다면 다음과 같은 방식으로 이 프로퍼티들을 참조할 수 있다.

image.width
image.height

함수가 객체 프로퍼티로 저장될 경우 그 함수를 흔히 메서드라고 부른다. 이 경우 객체 프로퍼티의 이름은 메서드 이름이 된다.

객체 메서드를 호출할 때는 객체로부터 함수 값을 추출하기 위해 .을 사용하고 함수를 호출하기 위해()를 사용한다. 예를 들어, document라는 객체의 wrute() 메서드를 호출하려면 다음과 같이 코드를 작성하면된다.

document.write("ROONEY");

자바스크립트에서 객체는 연관 배열의 역할도 수행한다. 즉, 객체는 임의의 문자열에 임의의 값을 연결한다. 객체가 이러한 방식으로 사용될 경우 객체 프로퍼티에 접근할 때는 다른 문법을 사용한다. 이 때는 접근하려는 프로퍼티 이름을 나타내는 문자열을 대괄호로 둘러싸면 된다.

image["width"]
image["geight"]

연관 배열은 많은 프로그래밍 기법에서 효과적으로 사용될 수 있는 데이터 타입이다. 조금 더 공부하고 설명해보도록 하겠다.


객체 생성

객체는 특수한 생성자 함수를 호출하여 샹성할 수 있다. 다음 몇 줄은 모두 객체를 생성하는 코드를 보여준다.

var O = new object();
var now = new Date();
var Patter = new RegExp("\\sjava\\s","i");

일단 여러분이 원하는 객체를 생성하고 나면 마음대로 객체를 사용하고 프로퍼티 값을 설정할 수 있다.

var point = new Object();
point.x = 2.3;
point.y = -1.2;

객체 리터럴

자바스크립트는 객체를 생성하고 프로퍼티를 지정하는 객체 리터럴 문법을 제공한다. 객체 리터럴은 콜론으로 구별되는 프로퍼티 이름/값 쌍들이 다시 쉼표로 분리된 목록이다. 따라서 앞에서 본 point 객체를 다음과 같이 생성하고 초기화 할 수 있다.

var point = {x:2.3, y:-1.2};

객체 리터럴 내에서 사용되는 프로퍼티 값이 상수일 필요는 없다. 프로퍼티 값으로 임의의 자바스크립트 표현식을 사용할 수 있다. 또한 객체 리터럴 내의 프로퍼티 이름으로 식별자 뿐만 아니라 문자열도 사용할 수 있다.

var square = { "upperLeft": {x:point.x, y:point.y}, 
			   'lowerRight': {x:point.x + side, y: point.y + side}};            

*참고자료 : 자바스크립트 완벽 가이드 5/E

profile
레벨업 하는 중

0개의 댓글