본문 바로가기

Programming/Javascript

(78)
4. Javascript 프로토타입([[Prototype]]) Javascript의 프로토타입 자바스크립트의 모든 객체는 프로토타입 객체를 갖습니다. 이는, 일반적인 객체지향 언어에서의 상속 개념과 거의 동일하고 부모 객체의 프로퍼티를 그대로 사용할 수 있다는 특성을 보여줍니다. 이 프로토타입은 Javascript에서 객체가 생성되는 시점에 일정한 규칙에 따라 정해집니다. 객체가 생성되는 방식도 여러가지 경우의 수가 존재하기 때문에, 이에 따른 생성 규칙은 추후에 알아보겠습니다. 우선은 객체 리터럴 방식으로 객체를 생성한 후, 프로토타입에 대해서 알아보겠습니다. var newObj = { age : 20, name : 'John Doe' }; console.log(newObj.toString()); console.dir(newObj); 위와 같이 newObj 객체를..
3. Javascript 참조 타입의 특성 Javascript 참조 타입의 특성 ○ Javascript 기본타입인 숫자 / 문자열 / 불린 / null / undefined를 제외한 모든 값은 객체입니다. ○ 객체의 모든 연산은 실제 값이 아닌 참조값으로 처리합니다. 객체가 갖는 '참조'의 의미는? 아래와 같이, 임의의 객체와 해당 객체의 프로퍼티를 생성하고 대입하는 과정을 살펴보겠습니다. var newObjA = { value : 100 }; var newObjB = newObjA; console.log(newObjA.value); console.log(newObjB.value); /* 출력 */ // 100 // 100 새로운 객체 newObjA에 프로퍼티 value를 선언해 두었습니다. 그리고 newObjB에 newObjA 객체 자체를 대입..
2. Javascript 참조 타입 (2) - 객체 프로퍼티 읽고, 쓰고, 삭제하기 객체에 생성된 프로퍼티 접근 객체에 생성한 프로퍼티에 접근할 때는 (1) 대괄호([ ]) 또는 (2)마침표( . )를 사용해 접근합니다. 아래와 같은 예제 객체를 생성했다고 가정해봅시다. var indigo = { name : 'james', company : 'google' }; 객체 indigo에 있는 프로퍼티인 name과 company를 각각 출력해 봅시다. 이때, 출력할 프로퍼티를 위에서 언급한 대괄호와 마침표 표기법을 각각 사용해 출력을 테스트해 보겠습니다. console.log(indigo.name); console.log(indigo['company']); /* 출력 */ // james // google 모두 정상적으로 프로퍼티 값이 출력되는 것을 확인할 수 있습니다. 상황과 필요에 따라서..
2. Javascript 참조 타입 (1) - 객체 생성 Javascript의 참조 타입 앞서 살펴본 기본 타입을 제외한 모든 값은, Javascript에서 모두 '객체'입니다. 기본 데이터 타입과의 가장 큰 차이는, 기본 데이터 타입은 하나의 값을 가지는 데 비해 참조 타입 객체는 여러개의 속성 값 - 즉 프로퍼티(property)를 갖습니다. 이 프로퍼티는 기본 타입의 값도, 다른 객체도 가리킬 수 있습니다. 객체는 흔히 사용하는 자료구조와 마찬가지로, key : value 형태로 값을 저장하게 됩니다. 또한, 프로퍼티로서 저장된 함수를 메서드로 별도로 칭합니다. 객체를 생성하는 방법 C#이나 JAVA를 주로 사용하셨던 분들이라면, 이 객체의 개념을 주로 클래스를 이용한 인스턴스의 생성으로 생각하시는 분들도 있을 겁니다. 나중에 다루겠지만, Javascri..
1. Javascript 기본 데이터 타입(2) 불린(boolean) ○ 다른 언어와 마찬가지로, true / false를 나타내는 불린 타입의 값을 갖습니다. 데이터 타입은 'boolean'입니다. var boolVari = true; console.log(typeof(boolVari)); // boolean var a = 10; var b = 10; var c = 20; var resultA = a === b; console.log(resultA); // true var resultB = b === c; console.log(resultB); // false undefined ○ undefined는 javascript에서 아무런 값이 할당되지 않은 상태를 나타내는 데이터 타입입니다. ○ 동시에, undefined는 변수 자체의 값을 의미하기도 합니..
1. Javascript 기본 데이터 타입(1) Javascript의 기본 데이터 타입 기본적으로 알아두어야 할 Javascript의 기본 데이터 타입은 아래와 같습니다. 기본 데이터 타입이 아닌 것들은, 참조형 타입으로 다음 아티클에서 살펴볼 예정이니 우선은 기본 데이터 타입들에 대한 성질을 이해하고 넘어가도록 합시다. - 숫자 - 문자열 - 불린(boolean) - undefined - null Javascript의 기본 데이터 타입의 특징 ○ 위의 구분에서 언급된 기본 데이터 타입들은, 데이터(변수) 자체가 '하나의 값'을 갖습니다. 당연하겠지만 참조형 타입은 이런 저장 구조를 갖지 않을 겁니다. ○ Javascript에서 공통으로 적용되는 사항인데, Javascript는 데이터 타입 선언을 세부적으로 하지 않습니다. 대신 변수 선언 시 [var..