Javascript

[javascript] ๋ฐฐ์—ด ์ตœ๋Œ€๊ฐ’/์ตœ์†Œ๊ฐ’ ๊ตฌํ•˜๊ธฐ (Math.max~)

ddon 2021. 8. 22. 20:59

Math.max() <-> Math.min()

: Math.max() ์ž…๋ ฅ๊ฐ’์œผ๋กœ ๋ฐ›์€ 0๊ฐœ ์ด์ƒ์˜ ์ˆซ์ž ์ค‘ ๊ฐ€์žฅ ํฐ ์ˆซ์ž๋ฅผ ๋ฐ˜ํ™˜
: Math.min() ์ž…๋ ฅ๊ฐ’์œผ๋กœ ๋ฐ›์€ 0๊ฐœ ์ด์ƒ์˜ ์ˆซ์ž ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ์ˆซ์ž๋ฅผ ๋ฐ˜ํ™˜

// Math.max()
Math.max(5, 7, 1, 3, 9); // 9

// Math.min()
Math.min(5, 7, 1, 3, 9); // 1



๋ฐฐ์—ด์—์„œ ์ตœ๋Œ€/์ตœ์†Œ๊ฐ’์€ Function.prototype.apply(thisArg, [argsArray]) + Math.max() ๋ฅผ ์‚ฌ์šฉํ•ด์„œ
Math.max.apply(null, arr)๋กœ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.
apply()๋ฅผ ์“ฐ๊ธฐ ์‹ซ์œผ๋ฉด spread์—ฐ์‚ฐ์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. Math.max(...arr)

const arr = [5, 7, 1, 3, 2, 9, 11]; 

// apply()
Math.max.apply(null, arr); // 11
Math.min.apply(null, arr); // 1

// Spread ์—ฐ์‚ฐ์ž
Math.max(...arr); // 11
Math.min(...arr); // 1


๊ฐœ์ธ์ ์œผ๋กœ๋Š” apply()๋ณด๋‹ค spread์—ฐ์‚ฐ์ž๋ฅผ ๋” ๋งŽ์ด ์“ด๋‹ค.
์‹ค๋ฌด์—์„œ๋„ ์ข…์ข… ์“ฐ์ด์ง€๋งŒ ์•Œ๊ณ ๋ฆฌ์ฆ˜ ๋ฌธ์ œ ํ’€ ๋•Œ ๋งŽ์ด ์“ฐ์ธ๋‹ค!