(1) ν¨μ μ μΈλ¬ΈμΌλ‘ μ μΈλ ν¨μλ ν¨μμ μ΄λ¦μΌλ‘ νΈμΆλλ€.
(2) ν¨μ μ μΈλ¬ΈμΌλ‘ μ μΈλ ν¨μμ ν¨μ ννμμΌλ‘ ν¨μλ₯Ό μ μν ν¨μλ νΈμ΄μ€ν
λ λ
νΈμ΄μ€ν
μ’
λ₯κ° λ€λ₯΄λ€.
(3)Function μμ±μ ν¨μλ‘ ν¨μλ₯Ό μμ±ν μ μμ§λ§, κΆμ₯λμ§ μλλ€.
(1) false. ν¨μ μ μΈλ¬ΈμΌλ‘ μ μΈλ ν¨μλ ν¨μ μ΄λ¦μ΄ μλ ν¨μ κ°μ²΄λ₯Ό κ°λ¦¬ν€λ μλ³μλ‘ νΈμΆνλ€.
μλ°μ€ν¬λ¦½νΌ μμ§μ ν¨μ μ΄λ¦κ³Ό λμΌν μ΄λ¦μ μλ³μλ₯Ό μ묡μ μΌλ‘ μμ±νκ³ κ±°κΈ°μ
ν¨μ κ°μ²΄λ₯Ό ν λΉνλ€.
(2) true. ν¨μ μ μΈλ¬ΈμΌλ‘ μ μΈλ ν¨μλ ν¨μ νΈμ΄μ€ν
μ΄(μ μ²΄κ° λ€ λμ΄μ¬λ €μ§λ€).
ν¨μ ννμμΌλ‘ ν¨μλ₯Ό μ μν ν¨μλ λ³μ νΈμ΄μ€ν
(undefined)μ΄ λλ€.
(3) true. μμ±μ ν¨μλ‘ ν¨μλ₯Ό μμ±νλ λ°©μμ μΌλ°μ μ΄μ§ μκ³ λ°λμ§νμ§ μλ€.
ν΄λ‘μ λ₯Ό μμ±νμ§ μλ λ± λ€λ₯Έ λμμ νκΈ° λλ¬Έμ΄λ€.
function print(a = 1, b = 2 , c= 3){
console.log(a + b + c);
}
print(null, undefined);
5
맀κ°λ³μ κΈ°λ³Έ κ°μ 맀κ°λ³μμ μΈμλ₯Ό μ λ¬νμ§ μμμ κ²½μ°μ undefinedλ₯Ό μ λ¬ν κ²½μ°μλ§ μ ν¨νλ€.
0(μ묡μ νλ³ν) + 2 + 3 μ΄κΈ° λλ¬Έμ 5κ° λλ€.
function addA(obj){obj.a++};
function swapA(obj1, obj2){
const temp = obj1.a;
obj1.a = obj2.a;
obj2.a = temp;
}
const obj1 = {a : 1};
const obj2 = {a : 2};
addA(obj2);
swapA(obj1, obj2);
console.log(obj1, obj2);
{a: 3} {a: 1}
μ°Έμ‘°μ μν μ λ¬ λ°©μμΌλ‘ λμνκΈ° λλ¬Έμ μΈλΆ ν¨μμ λͺΈμ²΄μμ λ³κ²½μ΄ κ°λ₯νλ€.
λ°λΌμ μλ³Έ κ°μ²΄κ° λ³κ²½λλ λΆμ ν¨κ³Όκ° λ°μνλ€.
보기μ κ°μ΄ ν¨μ μ μΈλ¬Έ
μΌλ‘ μμ±νμμ λ, foo
ν¨μ λͺΈμ²΄ μΈλΆμμ foo
ν¨μλ₯Ό νΈμΆν μ μλ μ΄μ λ₯Ό μμ±νμμ€.
function foo() {
console.log('foo');
}
ν¨μ μ΄λ¦μ ν΄λΉ ν¨μ λͺΈμ²΄ λ΄λΆμμλ§ νΈμΆν μ μλ€.
νμ§λ§ 보기 μ½λμ κ°μ΄ ν¨μ μ μΈλ¬ΈμΌλ‘ μμ±λλ κ²½μ° μλ°μ€ν¬λ¦½νΈ μμ§μ΄ μ묡μ μΌλ‘ ν¨μ μ΄λ¦κ³Ό λμΌν μλ³μλ₯Ό μμ±νλ€.
(μμ±λ μλ³μλ₯Ό μ½λλ‘ μμ±νλ©΄ μλμ κ°λ€.)
λ°λΌμ ν¨μ λͺΈμ²΄ μΈλΆμμ ν¨μ μ΄λ¦μΌλ‘ νΈμΆνλ©΄ μλ³μλ₯Ό ν΅ν΄ ν¨μλ₯Ό μ€ννκ² λλ€.
var foo = function foo() {
console.log('foo');
};
- p160-163
λ³μμ νΈμ΄μ€ν
μ λ°νμ μ΄μ μ λ¨Όμ μ€νλμ΄ μλ³μλ₯Ό μμ±νλ€.
λ°λΌμ ν΄λΉ λ³μκ° μ μΈλκΈ° μ μ μ°Έμ‘°λ₯Ό νλ©΄ undefined(varμ κ²½μ°)λ‘ μ΄κΈ°νλμ΄ μλ κ²μ΄λ€.
ν¨μμ νΈμ΄μ€ν
λ λ°νμ μ΄μ μ λ¨Όμ μ€νλμ΄ μλ³μλ₯Ό μμ±νλ€.
νμ§λ§ λ³μμ κ²½μ°μ λ€λ₯΄κ² ν¨μ κ°μ²΄κ° μμ±λμ΄ ν λΉκΉμ§ λ°νμ μ΄μ μ μλ£λλ€.
ν¨μμ ννμμ κ²½μ° λ³μμ μ μΈλ¬Έκ³Ό λ³μ ν λΉλ¬Έμ μΆμ½ ννμΌλ‘ λμνλ€.
λ°λΌμ λ³μ ν λΉλ¬Έμ΄ μ€νλλ λ°νμμ ν¨μ κ°μ²΄κ° μμ±λλ―λ‘ ν¨μ ννμ μ΄μ μ ν¨μ νΈμΆμ΄ λΆκ°λ₯νλ€.
- p165
(1) ν¨μ μΈλΆ μνμ μμ‘΄νμ§ μλλ€.
(2) μΈλΆ μνλ₯Ό λ³κ²½ν μ μλ€.
(3) 맀κ°λ³μκ° νλλ μλ€.
(4) νμ λ°νκ°μ΄ μΌμ νλ€.
(5) ν¨μν νλ‘κ·Έλλ°κ³Ό κ΄λ ¨μ΄ μλ€.
(6) μΈμμ κ°μ μ λ λ³κ²½νμ§ μλλ€.
λ΅ : (1), (5)
(1), (2)
μΈλΆ μνμ μμ‘΄νμ§λ μκ³ λ³κ²½νμ§λ μλ, μ¦ λΆμ ν¨κ³Όκ° μλ ν¨μλ₯Ό μμ ν¨μλΌκ³ νλ€.
(3)
맀κ°λ³μμ κ°―μλ μκ΄μ΄ μλ€.
(4)
λμΌν μΈμκ° μ λ¬λλ©΄ μΈμ λ λμΌν κ°μ λ°ννλ€.
λ°λΌμ λ€λ₯Έ μΈμκ° μ€λ©΄ λ°νκ°μ΄ λ¬λΌμ§λ€.
(5) ν¨μν νλ‘κ·Έλλ°μ μμ ν¨μλ₯Ό ν΅ν΄ λΆμ ν¨κ³Όλ₯Ό μ΅λν μ΅μ ν΄ μ€λ₯λ₯Ό νΌνκ³ νλ‘κ·Έλ¨μ μμ μ±μ λμ΄λ €λ λ
Έλ ₯μ μΌνμ΄λΌ ν μ μλ€.
(6) μΈμμ κ°μ λ³κ²½ν μ μλ€.
- p186-188
p.155
- μΈμ: ν¨μλ₯Ό νΈμΆνλ κ³Όμ μμ μ λ¬λλ λ³μ(μ
λ ₯)
- 맀κ°λ³μ: ν¨μ λ΄λΆλ‘ μ
λ ₯μ μ λ¬λ°λ λ³μ
p.165
β ν¨μ νΈμ΄μ€ν
μ λ°νμμ΄μ μ μ μΈκ³Όλμμ ν¨μκ°μ²΄λ‘ μ΄κΈ°νλμ§λ§, λ³μ νΈμ΄μ€ν
μ μ μΈλ¬Έμ λ°νμμ΄μ , κ°μ ν λΉμ λ°νμμ μ§νλλ€.
ν¨μ νΈμ΄μ€ν
: ν¨μ μ μΈλ¬Έμμν΄ μ μΈλ ν¨μκ° λ°νμμ΄μ μ μ μΈκ³Όλμμ ν¨μκ°μ²΄λ‘ μ΄κΈ°νλλλ νμ.(μ μΈλ¬Έ μ΄μ μ νΈμΆν΄λ μ μ λμ.)
λ³μ νΈμ΄μ€ν
: var,let,constλ‘ μ μΈλ λ³μ μ μΈλ¬Έμ λ°νμμ΄μ μ μλ³μλ₯Ό μμ±νλ€λμ μμ ν¨μ νΈμ΄μ€ν
κ³Ό λμΌνμ§λ§ varλ undefinedλ‘ μ΄κΈ°ν,constμ letμ μΌμμ μ¬κ°μ§λλ₯Ό νμ±(μ μΈλ¬Έ μ΄μ μ νΈμΆ,μ°Έμ‘°ν μ var : undefined, let,const: μλ¬λ°μ)
λ€μ λ ν¨μ(f1,f2)μ€ μμν¨μμ λΉμμν¨μλ₯Ό ꡬλΆνκ³ , μ΄μ λ₯Ό μμ±νμμ€.
const f1 = (n) => { //(1)
return n++;
};
let num = 1;
const f2 = () => { /// (2)
return num++;
};
(1)
f1μ΄ μμν¨μμΈ μ΄μ λ
1. λμΌν μΈμκ° μ λ¬λλ©΄ μΈμ λ λμΌν κ°μ λ°ννκΈ°λλ¬Έ
2. μ΄λ€ μΈλΆ μνμ μμ‘΄νμ§μκ³ μ€μ§ 맀κ°λ³μλ₯Ό ν΅ν΄ ν¨μ λ΄λΆλ‘ μ λ¬λ μΈμμκ²λ§ μμ‘΄ν΄ λ°νκ°μ λ§λ€κΈ° λλ¬Έ.
3. μΈλΆ μνλ₯Ό λ³κ²½νμ§ μκΈ° λλ¬Έ.(λΆμν¨κ³Όκ° μλ€.)
β μμν¨μλ μ΄λ€ μΈλΆ μνμλ μμ‘΄νμ§μμΌλ©°, μΈλΆ μνλ₯Ό λ³κ²½νμ§λ μλ ν¨μλ€.
156p
(1) λͺ λ²μ΄λ νΈμΆν μ μμΌλ―λ‘ μ½λμ μ¬μ¬μ©μ΄ μ©μ΄νλ€.
(2) μ μ§λ³΄μμ νΈμμ±μ λμ΄κ³ μ€μλ₯Ό μ€μ¬ μ½λμ μ λ’°μ±μ λμΈλ€.
(3) μ μ ν ν¨μμ΄λ¦μΌλ‘ ν¨μμ λ΄λΆ μ½λλ₯Ό μ΄ν΄νμ§ μκ³ λ ν¨μμ μν μ νμ
ν μ μμΌλ―λ‘ μ½λμ κ°λ
μ±μ ν₯μμν¨λ€.
ν¨μ ννμμΌλ‘ ν¨μλ₯Ό μ μνλ©΄ λ³μ νΈμ΄μ€ν κ³Ό ν¨μ νΈμ΄μ€ν μ€ μ΄λ€ κ²μ΄ λ°μνλκ°?
165p
λ³μ νΈμ΄μ€ν
μ΄ λ°μνλ€.
ν¨μ ννμμ λ³μμ ν λΉλλ κ°μ΄ ν¨μ 리ν°λ΄μΈ λ¬Έμ΄λ€.
λ°λΌμ ν¨μ ννμμ λ³μ μ μΈλ¬Έκ³Ό λ³μ ν λΉλ¬Έμ ν λ²μ κΈ°μ ν μΆμ½ ννκ³Ό λμΌνκ² λμνλ€.
λ³μ μ μΈμ λ°νμ μ΄μ μ μ€νλμ΄ undefinedλ‘ μ΄κΈ°νλμ§λ§, λ³μ ν λΉλ¬Έμ κ°μ ν λΉλ¬Έμ΄ μ€νλλ μμ (λ°νμ)μ νκ°λλ―λ‘
ν¨μ ννμμ ν¨μ 리ν°λ΄λ ν λΉλ¬Έμ΄ μ€νλλ μμ μ νκ°λμ΄ ν¨μ κ°μ²΄κ° λλ€.
λ°λΌμ ν¨μ ννμμΌλ‘ ν¨μλ₯Ό μ μνλ©΄ ν¨μ νΈμ΄μ€ν
μ΄ λ°μνλ κ²μ΄ μλλΌ, λ³μ νΈμ΄μ€ν
μ΄ λ°μνλ€.
λ€μ μ½λμ μ€ν κ²°κ³Όλ₯Ό μμΈ‘νκ³ , μλ¬κ° λ°μνμ§ μλ μ΄μ λ₯Ό μ€λͺ νμΈμ.
function add(x, y) {
return x + y;
}
console.log(add(2)); // (1)
console.log(add("a", "b")); //(2)
170p
(1) NaN
(2) ab
1. μλ°μ€ν¬λ¦½νΈ ν¨μλ 맀κ°λ³μμ μΈμμ κ°μκ° μΌμΉνλμ§ νμ
νμ§ μλλ€.
2. μλ°μ€ν¬λ¦½νΈλ λμ νμ
μΈμ΄μ΄κΈ° λλ¬Έμ, μλ°μ€ν¬λ¦½νΈ ν¨μλ 맀κ°λ³μμ νμ
μ μ¬μ μ μ§μ ν μ μλ€.
λ°λΌμ μλ°μ€ν¬λ¦½νΈμ ν¨μλ₯Ό μ μν λ, λ€μκ³Ό κ°μ΄ μ μ ν μΈμκ° μ λ¬λμλμ§ νμΈν νμκ° μλ€.
function add(x, y) {
if (typeof x !== "number" || typeof y !== "number") {
throw new TypeError("μΈμλ λͺ¨λ μ«μ κ°μ΄μ΄μΌ ν©λλ€!");
}
return x + y;
}