1.1. Object Literal - MrKwon/node.js GitHub Wiki
κ°μ²΄λ new Object()
, Object.create()
, Object Initializer λ‘ μ΄κΈ°ν λ μ μλ€.
Object Initializer λ₯Ό κ°μ²΄ 리ν°λ΄(Object Literal) μ΄λΌκ³ νλλ°, μ΄λ κ°μ²΄μ μ΄κΈ°νλ₯Ό 0κ° μ΄μμ μμ±λͺ
(property names) κ³Ό κ°μ²΄μ μ°κ΄λ κ°(associated values)λ€μ μ§μΌλ‘ μ΄λ£¨μ΄μ§ 리μ€νΈλ₯Ό μ½€λ§(,
)λ‘ κ΅¬λΆνμ¬ μ€κ΄νΈ{}
μμ λ£μ΄ μ΄κΈ°ννλ λ°©λ²μ΄λ€.
const b = 1;
const propertyName = 'c';
const ObjectLiteral01 = {
a: 0,
b: b,
[propertyName]: 2,
};
ES2015+ μλ μμ κ°μ²΄ 리ν°λ΄μ νΈλ¦¬ν κΈ°λ₯λ€μ΄ μΆκ°λμλλ°,
β κ°μ²΄μ λ©μλμ ν¨μλ₯Ό μ°κ²°ν λ, μ½λ‘ (:
)κ³Ό = function
μ λΆμ΄μ§ μμλ λλ€.
β‘ μμ±λͺ
κ³Ό λ³μλͺ
μ΄ κ²ΉμΉλ κ²½μ°μλ ν λ²λ§ μ¨λ λλ€.
ex) μμ ObjectLiteral01
μμ b: b,
λ₯Ό b,
λ‘ λ체ν΄λ κ°λ€.
β’ κ°μ²΄μ μμ±λͺ
μ λμ μΌλ‘ μμ±ν μ μμ
ex) μμ ObjectLiteral01
μμ [propertyName]
μ c
λ‘ λμ μμ±λλ€.
κΈ°μ‘΄μ λ¬Έλ²κ³Ό λΉκ΅νκΈ° μν μλ‘μ΄ μ½λλ₯Ό μμ±νλ©΄
- κΈ°μ‘΄
var helloNode = function() {
console.log('Hello Node');
};
var js = 'JS';
var object = {
helloJS = function() {
console.log('Hello JS');
},
helloNode: helloNode,
};
object[js + '_old'] = 'old is getting better to new';
- ES2015+ μ μ©
const helloNode = function() {
console.log('Hello Node');
};
const js = 'JS';
const object = {
helloJS() {
console.log('Hello JS');
},
helloNode,
[js + '_old']: 'old is getting better to new',
};
object.helloJS(); // Hello JS
object.helloNode(); // Hello Node
console.log(object.JS_old); // old is getting better to new