undefined
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since â¨2015ë 7ìâ©.
ì ì undefined ìì±ì undefined ìì ê°ì ëíë´ë©°,
JavaScriptì ìì ìë£í ì¤ íëì
ëë¤.
ìëí´ ë³´ê¸°
function test(t) {
if (t === undefined) {
return "Undefined value!";
}
return t;
}
let x;
console.log(test(x));
// Expected output: "Undefined value!"
ê°
undefinedì ìì ê°ì
ëë¤.
Property attributes of undefined | |
|---|---|
| ì°ê¸° ê°ë¥ | ë¶ê°ë¥ |
| ì´ê±° ê°ë¥ | ë¶ê°ë¥ |
| ì¤ì ê°ë¥ | ë¶ê°ë¥ |
ì¤ëª
undefinedë ì ì ê°ì²´ì ìì±ì
ëë¤. ì¦, ì ì ë²ìììì ë³ìì
ëë¤.
ìµì ë¸ë¼ì°ì ìì undefinedë ì¤ì ë¶ê°, ì°ê¸° ë¶ê°í ìì±ì
ëë¤. ê·¸ë ì§ ìëë¼ë ë®ì´ì°ëê±´ í¼íëê² ì¢ìµëë¤.
ê°ì í ë¹íì§ ìì ë³ìë undefined ìë£íì
ëë¤. ë©ìëë ì ì¸ë íê°í ë³ìê° ê°ì í ë¹ë°ì§ ìì ê²½ì°ì undefined를 ë°íí©ëë¤. í¨ìë ê°ì ëª
ìì ì¼ë¡ ë°ííì§ ìì¼ë©´ undefined를 ë°íí©ëë¤.
ì°¸ê³ :
ì ì ë²ì ì´ì¸ì 모ë ë²ììì ìë³ì (ë³ì ì´ë¦)ë¡ undefined를 ì¬ì©í ì ìì§ë§(undefinedë ìì½ì´ê° ìë기 ë문ì), ê·¸ë ê² íë ê²ì ë§¤ì° ëì ìê°ì
ëë¤. ì½ë를 ì ì§ë³´ìíê³ ëë²ê¹
í기 ì´ë µê² ë§ëëë¤.
// DON'T DO THIS
(() => {
const undefined = "foo";
console.log(undefined, typeof undefined); // foo string
})();
((undefined) => {
console.log(undefined, typeof undefined); // foo string
})("foo");
ìì
>ì격í ì¼ì¹ ì°ì°ê³¼ undefined
undefinedì ì격í ì¼ì¹, ë¶ì¼ì¹ ì°ì°ì를 ì¬ì©í´ ë³ìì ê°ì´ ìëì§ íì¸í ì ììµëë¤. ë¤ì ì½ëìì ë³ì xë ì´ê¸°íëì§ ììì¼ë©°, if문ì ì°¸ì¼ë¡ íê°ë©ëë¤.
let x;
if (x === undefined) {
// ì´ ë¬¸ì´ ì¤íë¨
} else {
// ì´ ë¬¸ì´ ì¤íëì§ ìì
}
ì°¸ê³ :
: x == undefinedë xê° nullì¼ ëë ì°¸ì´ê¸° ë문ì, ì격í ëë± ì°ì°ì(íì¤ ëë± ì°ì°ìì ë°ëë¡)를 ì¬ì©í´ì¼ í©ëë¤.
ë°ë©´ì, ì격í ëë± ì°ì°ìë ê·¸ë ì§ ììµëë¤. ì´ê²ì nullì´ undefinedíê³ ëì¼íì§ ì기 ë문ì
ëë¤.
ìì¸í ë´ì©ì Equality comparison and sameness 문ì를 íì¸íì¸ì.
typeof ì°ì°ìì undefined
ìì ìì ëì typeof를 ì¬ì©í ìë ììµëë¤.
let x;
if (typeof x === "undefined") {
// ì´ ë¬¸ì´ ì¤íë¨
}
typeof를 ì¬ì©íë í ê°ì§ ì´ì ë ë³ìê° ì ì¸ëì§ ìì ê²½ì° ì¤ë¥ë¥¼ ë°ììí¤ì§ ì기 ë문ì
ëë¤.
// x를 ì ì¸í ì ìì
// ì¤ë¥ ìì´ trueë¡ íê°
if (typeof x === "undefined") {
// ì´ ë¬¸ì´ ì¤íë¨
}
// ReferenceError ë°ì
if (x === undefined) {
}
ê·¸ë¬ë ë¤ë¥¸ ë°©ë²ë ììµëë¤. JavaScriptë ì ì ë²ì를 ê°ì§ë ì¸ì´ì´ë¯ë¡, ë³ìì ì ì¸ ì¬ë¶ë íì¬ ì»¨í ì¤í¸ì ì½ë를 ì½ì´ ì ì ììµëë¤.
ì ì ë²ìë ì ì ê°ì²´ì ë°ì¸ë©ëë¯ë¡, ì ì 컨í
ì¤í¸ìì ë³ìì ì¡´ì¬ ì 무ë in ì°ì°ì를 ì ì ê°ì²´ ëìì¼ë¡ ì¤íí´ ì ì ììµëë¤. ì를ë¤ì´,
if ("x" in window) {
// xê° ì ìì¼ë¡ ì ìë ê²½ì° ì´ ë¬¸ì´ ì¤íë¨
}
void ì°ì°ìì undefined
void ì°ì°ìë ì¸ë²ì§¸ ëìì
ëë¤.
let x;
if (x === void 0) {
// ì´ ë¬¸ì´ ì¤íë¨
}
// y를 ì´ì ì ì ì¸íì§ ìì
if (y === void 0) {
// throws Uncaught ReferenceError: y is not defined
}
ëª ì¸
| Specification |
|---|
| ECMAScript® 2026 Language Specification > # sec-undefined > |
ë¸ë¼ì°ì í¸íì±
ê°ì´ 보기
- JavaScriptì ìì ê°
null