October 28, 2020
κ°κ°μΈμ κ°μ μ΄λ¦μ΄ μκ³ μ¬λ¬Όλ λ§μ°¬κ°μ§λ‘ μ΄λ¦μ΄ μλ€.
μ΄λ¦μ λμ νλ λλͺ μ¬λ μλ€. λ, λ, me.. λ±λ±
νλ‘κ·Έλλ°μμ μκΈ° μμ μ κ°λ¦¬ν€λ ννμ this μ΄λ€.
μλλ cutiehany λΌλ μμ΄λλ₯Ό κ°μ§ νλ μ΄μ΄μ μ΄λ¦, ν νΈλ¦¬μ€ κ²μμ μ μ, 첫λ²μ§Έ κ²°κ³Όμ λλ²μ§Έ κ²°κ³Όλ₯Ό ν©ν λ©μλ λ₯Ό λ΄μ μλμ΄λ€.
let cutiehany = {
name : "hany kim",
first_record : 10, //첫 λ²μ§Έ κ²μμ μ€μ½μ΄
second_record : 20, //λ λ²μ§Έ κ²μμ μ€μ½μ΄
sum : function (f, s) {
return f + s;
}
}
console.log("κ²μμ€μ½μ΄μ ν©κ³ :" , cutiehany.sum(cutiehany.first_record, cutiehany.second_record))
κ²μμ€μ½μ΄μ ν©κ³ : 30
μμ μμλ₯Ό ν΅ν΄ μ μ μ κ²μ μ€μ½μ΄μ ν©κ³λ₯Ό μ»μλ€. κ·Έλ°λ°, cutiehany λΌλ κ°μ²΄ (μλ) μλ 10μ , 20μ μ΄λΌλ μ 보λ₯Ό λ΄λΆμ μΌλ‘ μ΄λ―Έ κ°μ§κ³ μλ€. λͺ μ μΈμ§ μκ³ μλλ° cutiehany.sum ν¨μμ μΈμλ‘ κ°μ λ νλ² μΈκΈνκ³ μλ€.
cutiehany.sum(cutiehany.first_record, cutiehany.second_record)
μ κ·ΈλΌ sum μ΄λΌλ λ©μλ λ΄μ 리ν΄λ¬Έμ λ°κΏ λ³ΌκΉ?
let cutiehany = {
name: 'hany kim',
first_record: 10, //첫 λ²μ§Έ κ²μμ μ€μ½μ΄
second_record: 20, //λ λ²μ§Έ κ²μμ μ€μ½μ΄
sum: function() {
return first_record + second_record
},
}
μ.. first_record κ° μ μ λμ΄ μμ§ μλ€λ μλ¬λ₯Ό λΈλ€.
console.log("κ²μμ€μ½μ΄μ ν©κ³ :" , cutiehany.sum(first_record, second_record))
Uncaught ReferenceError: first_record is not defined
at <anonymous>:1:43
κ·Έλμ λ€μ λ°κΎΈμλ€.
let cutiehany = {
name: 'hany kim',
first_record: 10, //첫 λ²μ§Έ κ²μμ μ€μ½μ΄
second_record: 20, //λ λ²μ§Έ κ²μμ μ€μ½μ΄
sum: function() {
return cutiehany.first_record + cutiehany.second_record;
},
}
console.log("κ²μμ€μ½μ΄μ ν©κ³ :" , cutiehany.sum())
κ²μμ€μ½μ΄μ ν©κ³ : 30
ν©κ³λ₯Ό μ μΆλ ₯νμ§λ§ λκ° μμ½λ€. μ μ°ν¨μ΄ λ¨μ΄μ§λ€λ λλμ΄λ€. μλνλ©΄? μλμ΄λ¦μ cutiehany μμ goodhany λ‘ λ°κΎΈλ©΄ λμμ΄ λμ§ μμ ν λ λλ€μ return λ¬Έμ μμ ν΄μΌλ§ νλ€.
νΉμ, μλμ κ°μ΄ μλ μ΄λ¦μ λμμ μ¬λ¬κ° κ°μ§ μλ μλ€.
let cutiehany = (prettyhany = {
name: 'hany kim',
first_record: 10, //첫 λ²μ§Έ κ²μμ μ€μ½μ΄
second_record: 20, //λ λ²μ§Έ κ²μμ μ€μ½μ΄
sum: function() {
return cutiehany.first_record + cutiehany.second_record
},
})
그리νμ¬ μ΄λ€ λ©μλκ° μμΌλ©΄, κ·Έ λ©μλκ° μμ μ΄ μν΄ μλ κ°μ²΄λ₯Ό κ°λ¦¬ν€λ νΉμν ν€μλλ₯Ό λ§λ€κΈ°λ‘ μ½μνλ€κ³ νλ€.
let cutiehany = {
name: 'hany kim',
first_record: 10, //첫 λ²μ§Έ κ²μμ μ€μ½μ΄
second_record: 20, //λ λ²μ§Έ κ²μμ μ€μ½μ΄
sum: function() {
return this.first_record + this.second_record;
},
}
console.log("κ²μμ€μ½μ΄μ ν©κ³ :" , cutiehany.sum())
κ²μμ€μ½μ΄μ ν©κ³ : 30
this κ° μν΄ μλ,
λ©μλκ° μν΄ μλ κ°μ²΄λ₯Ό κ°λ¦¬ν€λλ‘ μ½μλ νΉμν μμ½μ΄κ° THIS μ΄λ€.
κ°μ²΄κ° λ΄λΆμ μΌλ‘ κ°μ§κ³ μλ μνλ₯Ό (name, firstrecord, secondrecord) νμμμ μ°Έμ‘°ν μ μκΈ° λλ¬Έμ,
κΉλνκ² ν¨μμ μ΄λ¦μ νΈμΆνλ©΄μ νκ³ μ νλ μΌμ ν μ μκ² λμλ€.
this λ λ©μλκ° μν΄ μλ κ°μ²΄λ₯Ό λ§νκ³ , this λ₯Ό ν΅ν΄ κ·Έ κ°μ²΄μ λ€λ₯Έ λ³μμ κ°μ λΆλ¬μ¬ μ μλ€. (μ°Έμ‘°ν μ μλ€)
κ°μ²΄μ μ΄λ¦μ΄ λ°λμ΄λ this λΌλ λλͺ μ¬κ° μ§μνλ κ°μ²΄λ κ°λ€.