reference μΆκ° νμ΅
javascript-koans νμ΄ (μ§ν μ€)
μνμ½λ© μ°Έμ‘° κ°μ 1 ~ 3νΈ
μ¬μ νμ΅ κ°μ΄λ STEP 5 (reference ~ javascript koans)
μνμ½λ© μ°Έμ‘° κ°μ (1 ~ 3νΈ) μ°Έκ³
μμ νμ / κ° / ν λΉνλ€
var a = 1; // λ³μ aμ 1μ΄λΌλ κ°μ ν λΉνλ€ var b = a; // λ³μ bμλ, λ³μ aμ ν λΉν 1μ΄λΌλ κ°μ '볡μ 'ν΄μ λ΄λλ€ b = 2; // λ³μ bμ 2λΌλ κ°μ ν λΉνλ€ console.log(a); // 1 β λ³μ bμ λ³νμλ μκ΄ μμ΄, λ³μ aμλ μ¬μ ν 1μ΄λΌλ κ°μ΄ λ΄κ²¨ μλ€
κ°μ²΄ / μ£Όμ(μμΉ κ°) / κ°λ¦¬ν¨λ€
var a = {id : 1}; // λ³μ aλ κ°μ²΄κ° μ μ₯λ μ£Όμλ₯Ό κ°λ¦¬ν¨λ€(μ°Έμ‘°νλ€) var b = a; // λ³μ bλ λ³μ aκ° κ°λ¦¬ν€κ³ μλ μ£Όμλ₯Ό κ°λ¦¬ν¨λ€(μ°Έμ‘°νλ€) b.id = 2; // π λ³μ bκ° κ°λ¦¬ν€κ³ μλ κ°μ²΄μ idλΌλ νλ‘νΌν°μ κ°μ 2λ‘ λ°κΎΈλ©΄ console.log(a.id); // 2 β λ³μ aλ λ³μ bμ λκ°μ κ³³μ κ°λ¦¬ν€κ³ μμΌλ―λ‘ // λ³μ aκ° κ°λ¦¬ν€κ³ μλ κ°μ²΄μ idλΌλ νλ‘νΌν°μ κ°λ 2κ° μ°νκ² λλ€
π‘ μ£Όμ π‘ (μμ κ²½μ°μ λΉκ΅ν κ²)
var a = {id : 1}; // λ³μ aλ {id : 1}μ΄λΌλ κ°μ²΄κ° μ μ₯λ μ£Όμλ₯Ό κ°λ¦¬ν¨λ€(μ°Έμ‘°νλ€) var b = a; // λ³μ bλ λ³μ aκ° κ°λ¦¬ν€κ³ μλ μ£Όμλ₯Ό κ°λ¦¬ν¨λ€(μ°Έμ‘°νλ€) b = {id : 2}; // π λ³μ bλ {id : 2}λΌλ κ°μ²΄κ° μ μ₯λ μ£Όμλ₯Ό κ°λ¦¬ν¨λ€(μ°Έμ‘°νλ€) // μ¦, λ³μ bκ° κ°λ¦¬ν€κ³ μλ μ£Όμκ° λ°λλ€ console.log(a.id); // 1 β λ³μ aμ bλ μλ‘ λ€λ₯Έ μ£Όμλ₯Ό κ°λ¦¬ν€κ³ μμΌλ―λ‘ // λ³μ bμ λ³νμ μκ΄μμ΄, λ³μ aμ idλΌλ νλ‘νΌν°μ κ°μ κ·Έλλ‘ 1λ‘ μ°νλ€
μ΄λ '1.볡μ 'μ μμ μ κ°μ νλ¦μ΄λ€
λ€λ§,
'1.볡μ 'μμλ λ³μ bμ λ³μ aμ κ°μ΄ 볡μ λμ΄ ν λΉλκ³ ,
'2. μ°Έμ‘°'μμλ λ³μ bκ° λ³μ aκ° κ°λ¦¬ν€κ³ μλ μ£Όμλ₯Ό κ°μ΄ κ°λ¦¬ν¬ λΏμ΄λ€
var a = 1; // λ³μ aμ 1μ΄λΌλ κ°μ ν λΉνλ€ function func(b) { b = 2; } // bμ κ°μ 2λ‘ λ°κΎΈμ΄μ£Όλ func ν¨μ μ μ func(a); // aλ₯Ό func ν¨μμ 맀κ°λ³μλ‘ μ ν΄μ£Όλ©΄μ func ν¨μ νΈμΆ console.log(a); // 1
μμ μ½λλ₯Ό νμ΄ μ°λ©΄ μλμ κ°λ€
var a = 1; b = a; b = 2; console.log(a)
var a = {id : 1}; function func(b) { b.id = 2; // π } func(a); console.log(a.id);
μμ μ½λλ₯Ό νμ΄ μ°λ©΄ μλμ κ°λ€
var a = {id : 1}; b = a; b. id = 2; console.log(a.id); // 2
π‘ μ£Όμ π‘ (μμ κ²½μ°μ λΉκ΅ν κ²)
var a = {id : 1}; function func(b) { b = {id : 2}; // π } func(a); console.log(a.id);
μμ μ½λλ₯Ό νμ΄ μ°λ©΄ μλμ κ°λ€
var a = {id : 1}; var b = a; b = {id : 2}; console.log(a.id); // 1
1λ² λ¬Έμ
const person = { age : 30 }; const something = person.age; person.age = 50; console.log(something);
νμ΄
const person = {age : 30}; console.log(typeof person.age); // 'number' const something = person.age; // λ³μ somethingμ ν λΉλ 건 30μ΄λΌλ μ«μμ console.log(typeof something); // 'number' person.age = 50; // personμ΄λΌλ κ°μ²΄μ ageλΌλ νλ‘νΌν°μ κ°μ΄ 30μμ 50μΌλ‘ λ³κ²½λ¨ console.log(something); // 30 β somethingμ λ³ν x
5λ² λ¬Έμ
var secret = { data : 'I am secret' }; function destroy (stuff) { stuff = null; } destroy(secret); console.log(secret); //
μμ μ½λλ₯Ό νμ΄ μ°λ©΄ μλμ κ°λ€
var secret = { data : 'I am secret' }; var stuff = secret; stuff = null; console.log(secret); // {data : 'I am secret'}
νμ΄ μ§ν μ€