RangeError
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์โฉ.
* Some parts of this feature may have varying levels of support.
RangeError ๊ฐ์ฒด๋ ์ด๋ค ๊ฐ์ด ์งํฉ์ ์๊ฑฐ๋ ํ์ฉ๋๋ ๋ฒ์๊ฐ ์๋ ๋ ์ค๋ฅ๋ฅผ ๋ํ๋
๋๋ค.
์ค๋ช
์ด๋ค ๊ฐ์ ๊ทธ ๊ฐ์ด ํฌํจ๋๋ ๋ฒ์๋ฅผ ํ์ฉํ์ง ์๋ ํจ์์ ์ธ์๋ก ์ ๋ฌํ๋ ค ํ ๋ RangeError๊ฐ ๋ฐ์ํฉ๋๋ค.
์ด ๋ฌธ์ ๋ ๋ค์๊ณผ ๊ฐ์ ๊ฒฝ์ฐ์ ๋ฐ์ํ ์ ์์ต๋๋ค.
- ํ์ฉ๋๋ ๋ฌธ์์ด์ด ์๋ ๊ฐ์
String.prototype.normalize()์ ์ ๋ฌํ๊ฑฐ๋, Array์์ฑ์๋ฅผ ํตํด ์๋ชป๋ ๊ธธ์ด์ ๋ฐฐ์ด์ ๋ง๋๋ ค๊ณ ์๋ํ๊ฑฐ๋,- ์ซ์ ๋ฉ์๋
Number.prototype.toExponential(),Number.prototype.toFixed()ํน์Number.prototype.toPrecision()์ ๋์ ๊ฐ์ ์ ๋ฌํ๋ ๊ฒฝ์ฐ.
RangeError๋ ์ง๋ ฌํ ๊ฐ๋ฅํ ๊ฐ์ฒด์ด๊ธฐ ๋๋ฌธ์, structuredClone()๋ก ๋ณต์ ํ๊ฑฐ๋ postMessage()๋ฅผ ์ฌ์ฉํ์ฌ Worker ๊ฐ์ ๋ณต์ฌํ ์ ์์ต๋๋ค.
RangeError๋ Error์ ํ์ ํด๋์ค์
๋๋ค.
์์ฑ์
RangeError()-
์๋ก์ด
RangeError๊ฐ์ฒด๋ฅผ ๋ง๋ญ๋๋ค.
์ธ์คํด์ค ์์ฑ
์ธ์คํด์ค ์์ฑ์ ๋ถ๋ชจ์ธ Error๋ก๋ถํฐ ์์๋ฐ์ต๋๋ค.
์๋ ์์ฑ์ RangeError.prototype์ ์ ์๋์ด ์์ผ๋ฉฐ ๋ชจ๋ RangeError ์ธ์คํด์ค ๊ฐ์ฒด์ ๊ณต์ ํฉ๋๋ค.
RangeError.prototype.constructor-
์ธ์คํด์ค ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ ์์ฑ์ ํจ์์ ๋๋ค.
RangeError์ธ์คํด์ค์์ ์ด๊ธฐ ๊ฐ์RangeError์์ฑ์์ ๋๋ค. RangeError.prototype.name-
์ค๋ฅ์ ์ ํ์ ๋ํ ์ด๋ฆ์ ๋ํ๋ ๋๋ค.
RangeError.prototype.name์ ์ด๊ธฐ ๊ฐ์"RangeError"์ ๋๋ค.
์ธ์คํด์ค ๋ฉ์๋
์ธ์คํด์ค ๋ฉ์๋๋ ๋ถ๋ชจ์ธ Error๋ก๋ถํฐ ์์๋ฐ์ต๋๋ค.
์์
>RangeError ์ฌ์ฉํ๊ธฐ(์ซ์ ๊ฐ์ผ ๊ฒฝ์ฐ)
function check(n) {
if (!(n >= -500 && n <= 500)) {
throw new RangeError("The argument must be between -500 and 500.");
}
}
try {
check(2000);
} catch (error) {
if (error instanceof RangeError) {
// ์ค๋ฅ ์ฒ๋ฆฌ
}
}
RangeError ์ฌ์ฉํ๊ธฐ (์ซ์๊ฐ์ด ์๋ ๊ฒฝ์ฐ)
function check(value) {
if (!["apple", "banana", "carrot"].includes(value)) {
throw new RangeError(
'The argument must be an "apple", "banana", or "carrot".',
);
}
}
try {
check("cabbage");
} catch (error) {
if (error instanceof RangeError) {
// ์ค๋ฅ ์ฒ๋ฆฌ
}
}
๋ช ์ธ
| Specification |
|---|
| ECMAScriptยฎ 2026 Languageย Specification> # sec-native-error-types-used-in-this-standard-rangeerror> |