문서의 선택한 두 판 사이의 차이를 보여줍니다.
| 다음 판 | 이전 판 | ||
|
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> | ||