From 218934fa2ed1c702a6d3923d2aa2cc6b43c48684 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:43:23 -0500 Subject: initial commit --- .../reference/global_objects/rangeerror/index.html | 152 +++++++++++++++++++++ 1 file changed, 152 insertions(+) create mode 100644 files/zh-tw/web/javascript/reference/global_objects/rangeerror/index.html (limited to 'files/zh-tw/web/javascript/reference/global_objects/rangeerror') diff --git a/files/zh-tw/web/javascript/reference/global_objects/rangeerror/index.html b/files/zh-tw/web/javascript/reference/global_objects/rangeerror/index.html new file mode 100644 index 0000000000..257c23be9a --- /dev/null +++ b/files/zh-tw/web/javascript/reference/global_objects/rangeerror/index.html @@ -0,0 +1,152 @@ +--- +title: RangeError +slug: Web/JavaScript/Reference/Global_Objects/RangeError +tags: + - Error + - JavaScript + - Object + - RangeError +translation_of: Web/JavaScript/Reference/Global_Objects/RangeError +--- +
{{JSRef}}
+ +

RangeError物件在一個給定的值不在允許的集合或範圍內時被作為一個錯誤拋出

+ +

語法

+ +
new RangeError([message[, fileName[, lineNumber]]])
+ +

參數

+ +
+
message
+
可選。具人類可讀性的錯誤說明
+
fileName {{non-standard_inline}}
+
可選。包含造成錯誤發生的程式碼的檔案名稱
+
lineNumber {{non-standard_inline}}
+
可選。造成錯誤發生的程式碼行號
+
+ +

說明

+ +

當試著往一個 function 傳入一個不被其允許的值作為參數時,一個RangeError被拋出。這可在多種情況遭遇到,例如傳入一個不被允許的字串值到 {{jsxref("String.prototype.normalize()")}},或試著透過 {{jsxref("Array")}} constructor 用一個不合法的長度來創建一個陣列,或往數值方法像是{{jsxref("Number.toExponential()")}}、{{jsxref("Number.toFixed()")}}、{{jsxref("Number.toPrecision()")}} 傳進糟糕的值。

+ +

屬性

+ +
+
{{jsxref("RangeError.prototype")}}
+
允許對一個 RangeError 物件增加其屬性。
+
+ +

方法

+ +

普遍的 RangeError 自身沒有包含方法,儘管他的確從原型鍊中繼承了一些。

+ +

RangeError 物件實體

+ +

屬性

+ +
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/RangeError/prototype', 'Properties')}}
+ +

方法

+ +
{{page('/en-US/docs/Web/JavaScript/Reference/Global_Objects/RangeError/prototype', 'Methods')}}
+ +

範例

+ +

使用 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)
+    {
+        // Handle the error.
+    }
+}
+ +

使用 RangeError (非數值)

+ +
function check(value)
+{
+    if(["apple", "banana", "carrot"].includes(value) === false)
+    {
+        throw new RangeError("The argument must be an \"apple\", \"banana\", or \"carrot\".");
+    }
+}
+
+try
+{
+    check("cabbage");
+}
+catch(error)
+{
+    if(error instanceof RangeError)
+    {
+        // Handle the error.
+    }
+}
+
+ +

規範

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
規範狀態注解
{{SpecName('ES3')}}{{Spec2('ES3')}}Initial definition.
{{SpecName('ES5.1', '#sec-15.11.6.2', 'RangeError')}}{{Spec2('ES5.1')}} 
{{SpecName('ES6', '#sec-native-error-types-used-in-this-standard-rangeerror', 'RangeError')}}{{Spec2('ES6')}} 
{{SpecName('ESDraft', '#sec-native-error-types-used-in-this-standard-rangeerror', 'RangeError')}}{{Spec2('ESDraft')}} 
+ +

瀏覽器相容性

+ +
+ + +

{{Compat("javascript.builtins.RangeError")}}

+
+ +

另見

+ + -- cgit v1.2.3-54-g00ecf