Skip to content

Latest commit

ย 

History

History
136 lines (115 loc) ยท 2.74 KB

ch07-ํ•ด์„ค.md

File metadata and controls

136 lines (115 loc) ยท 2.74 KB

Chapter07

๐Ÿ“Œ๋ฌธ์ œ1

๋ฌธ์ œ ์ž‘์„ฑ

console.log( false ?? 'hello');
console.log(null ?? 'bye');
console.log('' ?? 'hi')
console.log( '' ? 'hello' : 'bye');

์ •๋‹ต ๋ฐ ํ•ด์„ค

false
bye
// ๋นˆ ๋ฌธ์ž์—ด ์ถœ๋ ฅ
bye

?? ์—ฐ์‚ฐ์ž๋Š” ?? ์•ž์˜ ๊ฐ’์ด null ์ด๊ฑฐ๋‚˜ undefined์ผ ๋•Œ ๋’ค์˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ด์ค€๋‹ค. 
์‚ผํ•ญ ์—ฐ์‚ฐ์ž์™€ ๋‹ค๋ฅด๊ฒŒ ์•”๋ฌต์  ํ˜•๋ณ€ํ™˜์„ ํ•˜์ง€ ์•Š๋Š”๋‹ค. 

๐Ÿ“Œ๋ฌธ์ œ2

๋‹ค์Œ ์ฝ”๋“œ์˜ ์ถœ๋ ฅ๊ฒฐ๊ณผ๋ฅผ ์˜ˆ์ธกํ•ด์ฃผ์„ธ์š”.

const a = undefined;
const b = null;
const c = 123;


const a1 = a ?? "๊ฐ’์ด ์—†์Šต๋‹ˆ๋‹ค.";
console.log(a1); //(1)


const b1 = b ?? "๊ฐ’์ด ์—†์Šต๋‹ˆ๋‹ค.";
console.log(b1); //(2)


const c1 = c ?? "๊ฐ’์ด ์—†์Šต๋‹ˆ๋‹ค.";
console.log(c1); //(3)	

์ •๋‹ต ๋ฐ ํ•ด์„ค

(1): "๊ฐ’์ด ์—†์Šต๋‹ˆ๋‹ค."
(2): "๊ฐ’์ด ์—†์Šต๋‹ˆ๋‹ค."
(3): 123
-> ??๋Š” ์ขŒํ•ญ์˜ ํ”ผ์—ฐ์‚ฐ์ž๊ฐ€ null ๋˜๋Š” undefined์ธ ๊ฒฝ์šฐ ์šฐํ•ญ์˜ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ๋ฐ˜ํ™˜ํ•˜๊ณ  ๊ทธ๋ ‡์ง€ ์•Š์œผ๋ฉด ์ขŒํ•ญ์˜ ํ”ผ์—ฐ์‚ฐ์ž๋ฅผ ๋ฐ˜ํ™˜ํ•œ๋‹ค. (๋ณ€์ˆ˜์— ๊ธฐ๋ณธ๊ฐ’์„ ์„ค์ •ํ•  ๋•Œ ์œ ์šฉ.)

๐Ÿ“Œ๋ฌธ์ œ3

์—ฐ์‚ฐ์ž์˜ ๋ถ€์ˆ˜ ํšจ๊ณผ๊ฐ€ ๋ฌด์—‡์ธ์ง€ ์„ค๋ช…ํ•˜๊ณ , ์Œ ์ค‘ ๋ถ€์ˆ˜ํšจ๊ณผ๋ฅผ ์ผ์œผํ‚ค๋Š” ์—ฐ์‚ฐ์ž๋ฅผ ์ฐพ์œผ์‹œ์˜ค

(1) ํ• ๋‹น ์—ฐ์‚ฐ์ž (=)
(2) ์‚ผํ•ญ ์—ฐ์‚ฐ์ž
(3) ์ฆ๊ฐ ์—ฐ์‚ฐ์ž
(4) ์‚ฐ์ˆ  ์—ฐ์‚ฐ์ž

์ •๋‹ต ๋ฐ ํ•ด์„ค

1, 3
์—ฐ์‚ฐ์ž์˜ ๋ถ€์ˆ˜ ํšจ๊ณผ๋Š” ์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ํ”ผ์—ฐ์‚ฐ์ž์˜ ๊ฐ’์ด ๋ณ€ํ™”๋˜๋Š” ์ผ์„ ๋งํ•œ๋‹ค. 

๐Ÿ“Œ๋ฌธ์ œ4

์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž์™€ if ... else๋ฌธ์˜ ์ฐจ์ด์ ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

์ •๋‹ต ๋ฐ ํ•ด์„ค

์‚ผํ•ญ ์กฐ๊ฑด ์—ฐ์‚ฐ์ž ํ‘œํ˜„์‹์€ ๊ฐ’์œผ๋กœ ํ‘œํ˜„๋˜๊ณ ,
if...else ๋ฌธ์€ ํ‘œํ˜„์‹์ด ์•„๋‹Œ ๋ฌธ์ด๋ฏ€๋กœ ๊ฐ’์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†๋‹ค.
  • p84~85

๐Ÿ“Œ๋ฌธ์ œ5

(1) ๋‹ค์Œ ์ฝ”๋“œ์˜ ์ถœ๋ ฅ ๊ฐ’์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

let x = 1;
x = x + ++x + x;
console.log(x);

(2) ๋‹ค์Œ ๋ณด๊ธฐ์˜ ์—ฐ์‚ฐ์ž ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’์€ ๊ฒƒ๋ถ€ํ„ฐ ๋‚˜์—ดํ•˜์‹œ์˜ค.

x++, !=, ||, &&, +=, ++x

(3) ๋‹ค์Œ ์ฝ”๋“œ ์ˆ˜ํ–‰ ํ›„, x์˜ ๊ฐ’์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

let x = 1, y = 1;
x += ++x && y != x++ || y;

์ •๋‹ต ๋ฐ ํ•ด์„ค

(1) : 5
++x ๊ฐ’์ด ์ˆ˜ํ–‰๋œ ํ›„ ์ด๋ฒˆ์งธ ํ•ญ์— ์ž๋ฆฌ์žก์œผ๋ฏ€๋กœ ์„ธ๋ฒˆ์งธ ํ•ญ์— ๋“ค์–ด์˜ค๋Š” x๊ฐ’์€ 2์ด๋‹ค.
(2) : x++ ++x != && || +=
(3) : 2
let x = 1, y = 1;
x += ++x && y != x++ || y;
x = x + (++x && y != x++ || y);
x = x + ((++x) && y != (x++) || y);
x = x + ((++x) && (y != (x++)) || y);
x = x + (((++x) && (y != (x++))) || y);
  • p91~92

๐Ÿ“Œ๋ฌธ์ œ6

๋‹ค์Œ ์ถœ๋ ฅ ๊ฒฐ๊ณผ๋ฅผ ์˜ˆ์ธกํ•˜์„ธ์š”.

let num = 3;
console.log(num--); // (1)
console.log(++num); // (2)

console.log(5 == "5"); // (3)
console.log(5 === "5"); // (4)

console.log(NaN === NaN); // (5)

๋‹ต์•ˆ ์ž‘์„ฑ

(1) 3
(2) 3
(3) true
(4) false
(5) false