- μ μΈλμ§ μμμ κ²½μ°
console.log(typeof v) // undefined
- λ³μκ° μ μΈλμμΌλ, ν λΉμ λμ§ μμμ κ²½μ°, μλ°μ€ν¬λ¦½νΈ μμ§μ μν΄ μλμΌλ‘ ν λΉλλ κ°μ΄λ€.
let a;
console.log(a); // undefined
console.log(typeof a); //undefined- μ΄λ ν μ°Έμ‘°κ°λ μ‘΄μ¬νμ§ μμμ μλ―Ένλ€.
- κ°μ²΄ μ°Έμ‘°μ μ°κ²°μ ν΄μ§νλ κ²μ λ§νλ€.
let b = null;
console.log(b); // null
console.log(typeof b); // Objectμ μΈλμ§ μμ λ³μλ undefinedμ΄λ, μ μΈλμ§ μμ λ³μλ₯Ό μ¬μ©νλ κ²μ λ¬Έλ² μ€λ₯μ΄λ€.
console.log(null == undefined); // true
console.log(null === undefined); // false
console.log(qwer == undefined); // ReferenceError: qwer is not defined
- μ μ μ€μ½ν
undeclared λ³μλ μ μΈνμ§ μμ λ³μλ‘, μ΄λ ν ν€μλλ μ§μ νμ§ μμ λ³μμ΄λ€. ν€μλλ₯Ό μ§μ νμ¬ λ³μλ₯Ό μ μΈνλ κ²μ, κ·Έ λ³μμ μ ν¨λ²μλ₯Ό μ§μ νλ κ² μ΄λ€. undeclared λ³μλ μ ν¨λ²μλ₯Ό μ§μ νμ§ μμμΌλ―λ‘, μ΄λ€ scopeμμ μ μΈμ νλμ§κ°μ, μ μ κ°μ²΄μ νλ‘νΌν°κ° λλ€.
ν€μλλ₯Ό μ§μ νμ¬, λ³μμ μ ν¨λ²μλ₯Ό μ§μ ν declared λ³μμ λΉκ΅ν΄λ³΄μ. var ν€μλλ‘ μ μΈλ λ³μλ ν¨μ λ²μ μ€μ½νλ₯Ό κ°κΈ° λλ¬Έμ, μ μΈλ ν¨μ λ΄μμλ§ μ°Έμ‘°ν μ μλ€. μ μ μ€μ½νμμ var ν€μλλ‘ μ μΈλ λ³μλ₯Ό μ°Έμ‘°νλ €κ³ νλ©΄ μλ¬κ° λ°μνλ€.
function func() {
var varKeyword = "var λ‘ μ μΈλ λ³μ";
console.log(varKeyword); // var λ‘ μ μΈλ λ³μ
}
func();
console.log(varKeyword); // ReferenceError: varKeyword is not definedμ μΈνμ§ μμ λ³μλ μ μ λ³μμ΄λ―λ‘, μ μ μ€μ½νμμ μ μΈλμ§ μμ λ³μλ₯Ό μ°Έμ‘°ν μ μλ€.
function fn() {
undeclared = "μ μΈλμ§ μμ λ³μ";
}
fn();
console.log(undeclared); // μ μΈλμ§ μμ λ³μ
-
undeclared λ³μλ ν λΉλ¬Έμ λ§λκΈ° μ μ μ°Έμ‘°νλ €κ³ νλ©΄, μ€λ₯κ° λ°μνλ€.
console.log(undc); // ReferenceError: undc is not defined undc = "μ μΈλμ§ μμ λ³μ";
undefinedλ κ·Έ λ³μκ° μ°Έμ‘°νλ κ°μ²΄λ₯Ό μμ§ μ§μ νμ§ μμμμ λ»νλ€. undefinedλ₯Ό κ°λ λ³μκ° ν λΉμ ν΅ν΄ κ°μ κ°κ² λκ³ , μ΄ κ°μ ν΄μ ν λ, nullμ΄ λλ€.
let value; // ν λΉλ°μ§ μμ λ³μλ μλμΌλ‘ undefined
console.log(value); // undefined
value = "value"; // λ¬Έμμ΄μ ν λΉ
console.log(value); // value;
value = null; // λ¬Έμμ΄ κ°μ²΄λ₯Ό ν΄μ νμμΌλ―λ‘ null
console.log(value); // null