[Javascript] ๐Ÿ“š ๋‹จ์ถ• ํ‰๊ฐ€ (feat. ์˜ต์…”๋„ ์ฒด์ด๋‹ ์—ฐ์‚ฐ์ž, null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž)

Yoochanยท2022๋…„ 12์›” 20์ผ
1

๋‹จ์ถ• ํ‰๊ฐ€

๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž์— ๋Œ€ํ•ด ์•Œ๊ณ  ์žˆ๋‹ค๋ฉด ๋‹ค์Œ ์‚ฌํ•ญ์€ ์ž˜ ์ˆ™์ง€ํ•˜๊ณ  ์žˆ์„ ๊ฒƒ์ด๋‹ค.

true && true // true
true && false // false
true || false // true
false || true // true

๋ณดํ†ต ๋…ผ๋ฆฌํ•ฉ(||) ๋˜๋Š” ๋…ผ๋ฆฌ๊ณฑ(&&) ์—ฐ์‚ฐ์ž ํ‘œํ˜„์‹์˜ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋Š” booleanํƒ€์ž…์œผ๋กœ ์ธํ•ด์„œ ๊ฒฐ๊ณผ๊ฐ’์€ true(1) ๋˜๋Š” false(0) ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ๊ผญ ๋ถˆ๋ฆฌ์–ธ ๊ฐ’์ด ์•„๋‹ ์ˆ˜ ์žˆ๋‹ค. ๋ฌธ์ž์—ด์ด๋‚˜ ์ˆซ์ž, ๊ฐ์ฒด๋ฅผ ์‚ฌ์šฉ ํ•  ์ˆ˜๋„ ์žˆ๊ณ , ํ•ด๋‹น ๊ฐ’์ด Truthy ํ•˜๋ƒ Falsy ํ•˜๋ƒ์— ๋”ฐ๋ผ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ฌ๋ผ์ง„๋‹ค.

๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ฌธ์ž์—ด๋„ ํ•˜๋‚˜์˜ ๊ฐ’์œผ๋กœ ํ‰๊ฐ€๋˜๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค.

'Cat' && 'Dog' // "Dog"
'Cat' || 'Dog' // "Cat"

๋…ผ๋ฆฌํ•ฉ(||) ๋˜๋Š” ๋…ผ๋ฆฌ๊ณฑ (&&) ์—ฐ์‚ฐ์ž ํ‘œํ˜„์‹์€ ์–ธ์ œ๋‚˜ 2๊ฐœ์˜ ํ”ผ์—ฐ์‚ฐ์ž ์ค‘ ์–ด๋Š ํ•œ์ชฝ์œผ๋กœ ํ‰๊ฐ€๋œ๋‹ค. ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์˜ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ํƒ€์ž… ๋ณ€ํ™˜ํ•˜์ง€ ์•Š๊ณ  ๊ทธ๋Œ€๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ์ด๋ฅผ ๋‹จ์ถ• ํ‰๊ฐ€๋ผ๊ณ  ํ•œ๋‹ค. ๋‘ ์—ฐ์‚ฐ์ž ๋ชจ๋‘ ์ขŒํ•ญ์—์„œ ์šฐํ•ญ์œผ๋กœ ํ‰๊ฐ€๋ฅผ ์ง„ํ–‰ํ•œ๋‹ค.

๋…ผ๋ฆฌ๊ณฑ(&&)

'Cat' && 'Dog' // "Dog"

๋…ผ๋ฆฌ๊ณฑ(&&) ์—ฐ์‚ฐ์ž๋Š” ๋‘ ๊ฐœ์˜ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ ๋ชจ๋‘ true๋กœ ํ‰๊ฐ€๋  ๋•Œ true๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฉฐ, ์ขŒํ•ญ์—์„œ ์šฐํ•ญ์œผ๋กœ ํ‰๊ฐ€๊ฐ€ ์ง„ํ–‰๋œ๋‹ค. ์ฒซ ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž 'Cat'์€ truthyํ•œ ๊ฐ’์ด๋ฏ€๋กœ true๋กœ ํ‰๊ฐ€๋œ๋‹ค. ํ•˜์ง€๋งŒ ์œ„ ํ‘œํ˜„์‹์€ ์ด ์‹œ์ ์—์„œ ํ‰๊ฐ€ํ•  ์ˆ˜ ์—†๋‹ค. ๋‘ ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž๊นŒ์ง€ ํ‰๊ฐ€ํ•ด ๋ณด์•„์•ผํ•œ๋‹ค.
์ฆ‰, ๋‘ ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ ๋…ผ๋ฆฌ๊ณฑ ์—ฐ์‚ฐ์ž ํ‘œํ˜„์‹์˜ ํ‰๊ฐ€ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐ์ •ํ•˜๋ฉฐ, ๋…ผ๋ฆฌ๊ณฑ ์—ฐ์‚ฐ์ž๋Š” ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์˜ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐ์ •ํ•˜๋Š” ๋‘ ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž 'Dog'๋ฅผ ๊ทธ๋Œ€๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๋…ผ๋ฆฌํ•ฉ (||)

'Cat' || 'Dog' // "Cat"

๋…ผ๋ฆฌํ•ฉ(||) ์—ฐ์‚ฐ์ž๋Š” ๋‘ ๊ฐœ์˜ ํ”ผ์—ฐ์‚ฐ์ž ์ค‘ ํ•˜๋‚˜๋งŒ true๋กœ ํ‰๊ฐ€๋˜์–ด๋„ true๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋ฉฐ, ์ขŒํ•ญ์—์„œ ์šฐํ•ญ์œผ๋กœ ํ‰๊ฐ€๊ฐ€ ์ง„ํ–‰๋œ๋‹ค. ์ฒซ ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž 'Cat'์€ true๋กœ ํ‰๊ฐ€๋ฉ๋‹ˆ๋‹ค. ์ด ์‹œ์ ์— ๋‘ ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž๊นŒ์ง€ ํ‰๊ฐ€ํ•˜์ง€ ์•Š์•„๋„ ์œ„ ํ‘œํ˜„์‹์„ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ๋‹ค.
๋…ผ๋ฆฌํ•ฉ ์—ฐ์‚ฐ์ž๋Š” ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์˜ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐ์ •ํ•œ ์ฒซ ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž, ๋ฌธ์ž์—ด 'Cat'์„ ๊ทธ๋Œ€๋กœ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๊ทธ๋Ÿผ ๋‹จ์ถ• ํ‰๊ฐ€๋Š” ์–ด๋–ค ์ƒํ™ฉ์—์„œ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ๋ ๊นŒ?

  • ์–ด๋–ค ์กฐ๊ฑด์ด true ํ˜น์€ false์ผ ๋•Œ ๋ญ”๊ฐ€๋ฅผ ํ•ด์•ผํ•œ๋‹ค๋ฉด if๋ฌธ์„ ๋Œ€์ฒดํ•  ์ˆ˜ ์žˆ๋‹ค.
let done = true;
let message = "";

if (done) message = "์™„๋ฃŒ";
// ์œ„์•„๋ž˜์˜ ์ฝ”๋“œ๋Š” ๊ฐ™์€ ๋™์ž‘์„ ์ˆ˜ํ–‰
message = done && "์™„๋ฃŒ";
---

if (!done) message = '๋ฏธ์™„๋ฃŒ'
// ์œ„์•„๋ž˜์˜ ์ฝ”๋“œ๋Š” ๊ฐ™์€ ๋™์ž‘์„ ์ˆ˜ํ–‰
message = done || '๋ฏธ์™„๋ฃŒ';
  • ๊ฐ์ฒด๋ฅผ ๊ฐ€๋ฆฌํ‚ค๊ธฐ๋ฅผ ๊ธฐ๋Œ€ํ•˜๋Š” ๋ณ€์ˆ˜๊ฐ€ null ๋˜๋Š” undefined๊ฐ€ ์•„๋‹Œ์ง€ ํ™•์ธํ•˜๊ณ  ํ”„๋กœํผํ‹ฐ๋ฅผ ์ฐธ์กฐํ•  ๋•Œ, ๋‹จ์ถ• ํ‰๊ฐ€๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š๋Š”๋‹ค.
let elem = null;

let value = elem.value; // TypeError: Cannot read property 'value' of null
let value = elem && elem.value; // // null
  • ํ•จ์ˆ˜์˜ ์ธ์ž๋ฅผ ์ดˆ๊ธฐํ™”ํ•  ๋•Œ ๋‹จ์ถ• ํ‰๊ฐ€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ธฐ๋ณธ๊ฐ’์„ ์„ค์ •ํ•˜๋ฉด undefined๋กœ ์ธํ•ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ์—๋Ÿฌ๋ฅผ ๋ฐฉ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.
// ๋‹จ์ถ• ํ‰๊ฐ€๋ฅผ ์‚ฌ์šฉํ•œ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ธฐ๋ณธ๊ฐ’ ์„ค์ •
function getStringLength(str) {
  str = str || "";
  return str.length;
}

getStringLength(); // 0
getStringLength("hi"); // 2

// ES6) ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ๊ธฐ๋ณธ๊ฐ’์„ ์„ค์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ๋‹ค.
function getStringLength(str = "") {
  return str.length;
}

getStringLength(); // 0
getStrringLength("hi"); // 2

์˜ต์…”๋„ ์ฒด์ด๋‹ ์—ฐ์‚ฐ์ž

์˜ต์…”๋„ ์ฒด์ด๋‹ ์—ฐ์‚ฐ์ž (?.)๋Š” ์ขŒํ•ญ์˜ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ null๋˜๋Š” undefined์ธ ๊ฒฝ์šฐ undefined๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์šฐํ•ญ์˜ ํ”„๋กœํผํ‹ฐ๋ฅผ ์ด์–ด๊ฐ„๋‹ค.

์˜ต์…”๋„ ์ฒด์ด๋‹์„ ์‚ฌ์šฉํ•˜๋ฉด ํ”„๋กœํผํ‹ฐ๊ฐ€ ์—†๋Š” ์ค‘์ฒฉ ๊ฐ์ฒด๋ฅผ ์—๋Ÿฌ์—†์ด ์•ˆ์ „ํ•˜๊ฒŒ ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค.

๋‹ค์Œ ์˜ˆ์ œ๋ฅผ ์‚ดํŽด๋ณด์ž.

const students = {
  mark: {
    age: 20,
    score: {
      korean: 90,
      english: 80,
      math: 40,
    },
  },
  john: {
    age: 20,
  },
};

john์ด๋ผ๋Š” ์‚ฌ๋žŒ์€ ์‹œํ—˜์ ์ˆ˜๊ฐ€ ์—†๋‹ค. ๋”ฐ๋ผ์„œ ํŠน์ • ๊ณผ๋ชฉ ์ ์ˆ˜ ์ •๋ณด์— ์ ‘๊ทผํ•˜๋ ค๊ณ  ํ•˜๋ฉด ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•  ๊ฒƒ์ด๋‹ค.

console.log(students.john.score.math); // TypeError: Cannot read property 'math' of undefined

์˜ต์…”๋„ ์ฒด์ด๋‹์„ ์ด์šฉํ•˜๋ฉด ์—๋Ÿฌ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ค์ง€ ์•Š๊ณ  undefined๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

console.log(students.john.score?.math); // undefined

์ด ๋ฌธ์ œ๋Š” ์œ„์—์„œ ์–ธ๊ธ‰ํ•œ ๋‹จ์ถ• ํ‰๊ฐ€์˜ && ์—ฐ์‚ฐ์ž๋กœ๋„ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด์ฒ˜๋Ÿผ ๊ฐ์ฒด์˜ ํŠน์ • ํ”„๋กœํผํ‹ฐ์— ์ ‘๊ทผํ•˜๊ธฐ ์œ„ํ•ด ๊ฑฐ์ณ์•ผ ํ•  ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ๋งŽ์•„์ง€๋ฉด ์ด๋ ‡๊ฒŒ ์ฝ”๋“œ๊ฐ€ ๊ธธ์–ด์ง€๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค.

console.log(
  students && students.john && students.john.score && students.john.score.math
); // undefined

์ฃผ์˜ โ—๏ธ

  • ์˜ต์…”๋„ ์ฒด์ด๋‹์„ ๋‚จ์šฉํ•˜์ง€ ์•Š๋„๋ก ์ฃผ์˜ํ•ด์•ผํ•œ๋‹ค
    ?.๋Š” ์กด์žฌํ•˜์ง€ ์•Š์•„๋„ ๊ดœ์ฐฎ์€ ๋Œ€์ƒ์—๋งŒ ์‚ฌ์šฉํ•ด์•ผํ•œ๋‹ค. ์œ„ ์˜ˆ์‹œ์—์„œ๋Š” ์‚ฌ์šฉ์ž์˜ ์‹œํ—˜์ ์ˆ˜๊ฐ€ ํ•„์ˆ˜๊ฐ’์ด ์•„๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ students.john.score?.math๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๋ฐ”๋žŒ์งํ•˜๋‹ค.

  • ?. ์•ž์˜ ๋ณ€์ˆ˜๋Š” ๊ผญ ์„ ์–ธ๋˜์–ด ์žˆ์–ด์•ผ ํ•œ๋‹ค
    ์œ„์˜ ์˜ˆ์‹œ์—์„œ students๊ฐ€ ์„ ์–ธ๋˜์–ด์žˆ์ง€ ์•Š์œผ๋ฉด students.anything ํ‰๊ฐ€์‹œ ์—๋Ÿฌ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค.

console.log(students?.john); // ReferenceError: students is not defined

students?.john์„ ์‚ฌ์šฉํ•˜๋ ค๋ฉด let, const๋ฅผ ์ด์šฉํ•ด students๋ฅผ ์ •์˜ํ•ด์•ผํ•œ๋‹ค.

null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž

null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž(??)๋Š” ์ขŒํ•ญ์˜ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ null ๋˜๋Š” undefined์ธ ๊ฒฝ์šฐ ์šฐํ•ญ์˜ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ , ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ขŒํ•ญ์˜ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

let firstName = null;
let lastName = null;
let nickName = "๋ฐ”์ด์˜ฌ๋ ›";

// null์ด๋‚˜ undefined๊ฐ€ ์•„๋‹Œ ์ฒซ ๋ฒˆ์งธ ํ”ผ์—ฐ์‚ฐ์ž
console.log(firstName ?? lastName ?? nickName ?? "์ต๋ช…์˜ ์‚ฌ์šฉ์ž"); // ๋ฐ”์ด์˜ฌ๋ ›

์˜ต์…”๋„ ์ฒด์ด๋‹ ์—ฐ์‚ฐ์ž(?.)์™€ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž(&&) / null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž(??)์™€ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž(||)์˜ ์ฐจ์ด

์œ„์˜ ๊ฐœ๋…๋งŒ ๋ณธ๋‹ค๋ฉด ์˜ต์…”๋„ ์ฒด์ด๋‹ ์—ฐ์‚ฐ์ž(?.)์™€ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž(&&) ๊ทธ๋ฆฌ๊ณ  null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž(??)์™€ ๋…ผ๋ฆฌ ์—ฐ์‚ฐ์ž(||)๋Š” ์„œ๋กœ ๋ณ„๋‹ค๋ฅผ๊ฒƒ์ด ์—†์–ด ๋ณด์ธ๋‹ค. ์‹ค์ œ๋กœ ์œ„์—์„œ ์„ค๋ช…ํ•œ ์˜ˆ์‹œ๋“ค์—์„œ ??๋ฅผ ||๋กœ ๋ฐ”๊ฟ”๋„ ๊ทธ ๊ฒฐ๊ณผ๋Š” ๋™์ผํ•˜๋‹ค.

ํ•˜์ง€๋งŒ ์ค‘์š”ํ•œ ์ฐจ์ด์ ์ด ์กด์žฌํ•œ๋‹ค. ๋ฌด์—‡์ด ๋‹ค๋ฅผ๊นŒ โ“

  • ๋…ผ๋ฆฌ์—ฐ์‚ฐ์ž (&&, ||)๋Š” ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ truthy ํ˜น์€ falsyํ•œ ๊ฐ’์ธ์ง€์— ๋Œ€ํ•ด ์ดˆ์ ์„ ๋‘”๋‹ค.
  • ์˜ต์…”๋„ ์ฒด์ด๋‹ ์—ฐ์‚ฐ์ž(?.) ์™€ null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž(??) ๋Š” ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ null ํ˜น์€ undefined์ธ์ง€์— ๋Œ€ํ•ด ์ดˆ์ ์„ ๋‘”๋‹ค.

์ด ์ฐจ์ด์ ์€ null, undefined๊ณผ / ""๊ฐ™์€ string ์ด๋‚˜ ์ˆซ์ž 0 ์„ ๊ตฌ๋ถ„์ง€์–ด์•ผํ•  ๋•Œ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•œ๋‹ค.

  • ex) string ""
let str = "";
let length1 = str && str.length;
let length2 = str?.length;

console.log(length1); // ''
console.log(length2); // 0

str && str.length๋Š” str์— ""๋ฅผ ํ• ๋‹นํ•˜์ง€๋งŒ, ""์„ faslyํ•œ ๊ฐ’์œผ๋กœ ์ทจ๊ธ‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— str์˜ ๊ฐ’์ธ ""์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.

๋ฐ˜๋ฉด str?.length๋Š” str์ด null์ด๊ฑฐ๋‚˜ undefined์ผ ๊ฒฝ์šฐ์—๋งŒ undefined๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ""๋Š” ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฏ€๋กœ ์šฐํ•ญ์˜ ํ”„๋กœํผํ‹ฐ๋ฅผ ์ฐธ์กฐํ•˜๊ฒŒ ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ๋น„์–ด์žˆ๋Š” ๋ฌธ์ž์—ด์˜ length๋ฅผ ์ถœ๋ ฅํ•˜๊ฒŒ ๋˜๋ฏ€๋กœ 0์ด ๋œ๋‹ค.

๋”ฐ๋ผ์„œ ๋นˆ ๋ฌธ์ž์—ด ""์ด ํ• ๋‹น๋  ์ˆ˜ ์žˆ๋Š” ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•œ๋‹ค๋ฉด ์˜ต์…”๋„ ์ฒด์ด๋‹ ์—ฐ์‚ฐ์ž๊ฐ€ ๋” ์ ํ•ฉํ•˜๋‹ค.

  • ex) ์ˆซ์ž 0
let height = 0;

console.log(height || 100); // 100
console.log(height ?? 100); // 0

height || 100๋Š” height์— 0์„ ํ• ๋‹นํ•˜์ง€๋งŒ, 0์„ falsyํ•œ ๊ฐ’์œผ๋กœ ์ทจ๊ธ‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— null์ด๋‚˜ 0์„ ํ• ๋‹นํ•œ ๊ฒƒ๊ณผ ๋™์ผํ•˜๊ฒŒ ์ฒ˜๋ฆฌํ•œ๋‹ค.

๋ฐ˜๋ฉด height ?? 100์€ height๊ฐ€ null์ด๊ฑฐ๋‚˜ undefined์ผ ๊ฒฝ์šฐ์—๋งŒ 100์ด ๋œ๋‹ค. ๋”ฐ๋ผ์„œ 0์ด ์ถœ๋ ฅ๋œ๋‹ค.

๋”ฐ๋ผ์„œ 0์ด ํ• ๋‹น๋  ์ˆ˜ ์žˆ๋Š” ๋ณ€์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๊ธฐ๋Šฅ์„ ๊ฐœ๋ฐœํ•œ๋‹ค๋ฉด null ๋ณ‘ํ•ฉ ์—ฐ์‚ฐ์ž๊ฐ€ ๋” ์ ํ•ฉํ•˜๋‹ค.

profile
FrontEnd Developer

0๊ฐœ์˜ ๋Œ“๊ธ€