문서의 선택한 두 판 사이의 차이를 보여줍니다.
다음 판 | 이전 판 | ||
wiki:javascript:javascript_note:js_objects [2021/05/20 10:25] emblim98 만듦 |
wiki:javascript:javascript_note:js_objects [2023/01/13 18:44] (현재) |
||
---|---|---|---|
줄 31: | 줄 31: | ||
다음의 코드는 car라는 **변수(variable)**에 **간단한 값 (Fiat)**을 할당합니다.\\ | 다음의 코드는 car라는 **변수(variable)**에 **간단한 값 (Fiat)**을 할당합니다.\\ | ||
+ | <code javascript> | ||
+ | // Create and display a variable: | ||
+ | let car = " | ||
+ | document.getElementById(" | ||
+ | </ | ||
+ | \\ | ||
+ | 객체(objects)도 변수(variables)입니다. 그러나 객체는 많은 값을 포함할 수 있습니다.\\ | ||
+ | \\ | ||
+ | 아래의 코드는 car라는 변수에 **많은 값** (Fiat, 500, white)을 할당합니다.\\ | ||
+ | <code javascript> | ||
+ | // Create an object | ||
+ | let car = { type: ' | ||
+ | // Display some data from the object: | ||
+ | document.getElementById(' | ||
+ | /* The car type is Fiat */ | ||
+ | </ | ||
+ | \\ | ||
+ | 값(value)은 **이름: | ||
+ | \\ | ||
+ | %%JavaScript%% 객체는 속성 또는 메서드라고 하는 **명명된 값(named values)**을 위한 컨테이너입니다.\\ | ||
+ | =====Object Definition===== | ||
+ | 객체 리터럴(object literal)을 사용하여 %%JavaScript%% 객체를 정의(및 생성)합니다.\\ | ||
+ | ====Example==== | ||
+ | <code javascript> | ||
+ | // Create an object | ||
+ | let person = { firstName: ' | ||
+ | // Display some data from the object: | ||
+ | document.getElementById(' | ||
+ | /* John is 50 years old. */ | ||
+ | </ | ||
+ | \\ | ||
+ | 공백(spaces)과 줄 바꿈(line breaks)은 중요하지 않습니다. 객체 정의는 여러 줄에 걸쳐있을 수 있습니다.\\ | ||
+ | ====Example==== | ||
+ | <code javascript> | ||
+ | // Create an object | ||
+ | let person = { | ||
+ | firstName: ' | ||
+ | lastName: ' | ||
+ | age: 50, | ||
+ | eyeColor: ' | ||
+ | }; | ||
+ | // Display some data from the object: | ||
+ | document.getElementById(' | ||
+ | /* John is 50 years old. */ | ||
+ | </ | ||
+ | =====Object Properties===== | ||
+ | %%JavaScript%% 객체에서 **이름: | ||
+ | ^ Property | ||
+ | | firstName | ||
+ | | lastName | ||
+ | | age | 50 | | ||
+ | | eyeColor | ||
+ | \\ | ||
+ | =====Accessing Object Properties===== | ||
+ | 두 가지 방식으로 객체 속성(object properties)에 엑세스 할 수 있습니다: | ||
+ | <code javascript> | ||
+ | objectName.propertyName | ||
+ | </ | ||
+ | \\ | ||
+ | 또는\\ | ||
+ | \\ | ||
+ | <code javascript> | ||
+ | objectName[" | ||
+ | </ | ||
+ | ====Example 1==== | ||
+ | <code javascript> | ||
+ | // Create an object: | ||
+ | let person = { | ||
+ | firstName: " | ||
+ | lastName: " | ||
+ | id: 5566 | ||
+ | }; | ||
+ | // Display some data from the object: | ||
+ | document.getElementById(" | ||
+ | /* John Doe */ | ||
+ | </ | ||
+ | ====Example 2==== | ||
+ | <code javascript> | ||
+ | // Create an object: | ||
+ | let person = { | ||
+ | firstName: " | ||
+ | lastName: " | ||
+ | id: 5566 | ||
+ | }; | ||
+ | |||
+ | // Display some data from the object: | ||
+ | document.getElementById(" | ||
+ | /* John Doe */ | ||
+ | </ | ||
+ | |||
+ | =====Object Methods===== | ||
+ | 객체는 메서드를 가질 수도 있습니다.\\ | ||
+ | \\ | ||
+ | 메서드는 객체에 대해 수행할 수 있는 **작업(actions)**입니다.\\ | ||
+ | \\ | ||
+ | 메서드는 **함수 정의(function definition)**로 속성(properties)에 저장됩니다.\\ | ||
+ | \\ | ||
+ | ^ Property | ||
+ | | firstName | ||
+ | | lastName | ||
+ | | age | 50 | | ||
+ | | eyeColor | ||
+ | | fullName | ||
+ | \\ | ||
+ | 메서드(Method)는 속성(property)으로 저장되는 함수입니다. | ||
+ | | ||
+ | ====Example==== | ||
+ | <code javascript> | ||
+ | let person = { | ||
+ | firstName: " | ||
+ | lastName : " | ||
+ | id : 5566, | ||
+ | fullName : function() { | ||
+ | return this.firstName + " " + this.lastName; | ||
+ | } | ||
+ | }; | ||
+ | </ | ||
+ | |||
+ | =====The this Keyword===== | ||
+ | 함수 정의에서, | ||
+ | \\ | ||
+ | 위의 예에서, '' | ||
+ | \\ | ||
+ | 즉, '' | ||
+ | \\ | ||
+ | '' | ||
+ | |||
+ | =====Accessing Object Methods===== | ||
+ | 다음 구문을 사용하여 객체 메서드(object method)에 액세스합니다.\\ | ||
+ | <code javascript> | ||
+ | objectName.methodName() | ||
+ | </ | ||
+ | |||
+ | ====Example==== | ||
+ | <code javascript> | ||
+ | // Create an object: | ||
+ | let person = { | ||
+ | firstName: " | ||
+ | lastName: " | ||
+ | id: 5566, | ||
+ | fullName: function () { | ||
+ | return this.firstName + " " + this.lastName; | ||
+ | } | ||
+ | }; | ||
+ | |||
+ | // Display data from the object: | ||
+ | document.getElementById(" | ||
+ | /* John Doe */ | ||
+ | </ | ||
+ | \\ | ||
+ | ( ) 괄호 없이 메서드에 액세스하면, | ||
+ | ====Example==== | ||
+ | <code javascript> | ||
+ | // Create an object: | ||
+ | let person = { | ||
+ | firstName: " | ||
+ | lastName: " | ||
+ | id: 5566, | ||
+ | fullName: function () { | ||
+ | return this.firstName + " " + this.lastName; | ||
+ | } | ||
+ | }; | ||
+ | |||
+ | // Display data from the object: | ||
+ | document.getElementById(" | ||
+ | /* function () { return this.firstName + " " + this.lastName; | ||
+ | </ | ||
+ | |||
+ | =====Do Not Declare Strings, Numbers, and Booleans as Object!===== | ||
+ | %%JavaScript%% 변수가 "'' | ||
+ | \\ | ||
+ | <code javascript> | ||
+ | let x = new String(); | ||
+ | let y = new Number(); | ||
+ | let z = new Boolean(); | ||
+ | </ | ||
+ | \\ | ||
+ | '' | ||
+ | \\ | ||
{{tag> | {{tag> |