From 6ca84f1794af830ada9736d7289ce29aabb04ca3 Mon Sep 17 00:00:00 2001 From: t7yang Date: Mon, 10 Jan 2022 08:38:05 +0800 Subject: remove `notranslate` class in zh-TW --- .../reference/functions/arguments/index.html | 36 +++++++++++----------- 1 file changed, 18 insertions(+), 18 deletions(-) (limited to 'files/zh-tw/web/javascript/reference/functions/arguments/index.html') diff --git a/files/zh-tw/web/javascript/reference/functions/arguments/index.html b/files/zh-tw/web/javascript/reference/functions/arguments/index.html index 6b1d6a45a1..ddccefae10 100644 --- a/files/zh-tw/web/javascript/reference/functions/arguments/index.html +++ b/files/zh-tw/web/javascript/reference/functions/arguments/index.html @@ -16,7 +16,7 @@ translation_of: Web/JavaScript/Reference/Functions/arguments

語法

-
arguments
+
arguments

描述

@@ -32,20 +32,20 @@ translation_of: Web/JavaScript/Reference/Functions/arguments

For example, if a function is passed three arguments, you can refer to them as follows:

-
arguments[0]
+
arguments[0]
 arguments[1]
 arguments[2]
 

arguments 也可以被指定:

-
arguments[1] = 'new value';
+
arguments[1] = 'new value';

arguments 物件不是陣列。它與陣列非常相似,但是它沒有除了 length 這個屬性以外的其他陣列屬性。舉例,它沒有 pop 這個陣列方法。

然而,它依然可以被轉換為真正的陣列(Array)。

-
var args = Array.prototype.slice.call(arguments);
+
var args = Array.prototype.slice.call(arguments);
 var args = [].slice.call(arguments);
 
 // ES2015
@@ -55,7 +55,7 @@ const args = Array.from(arguments);
 

Using slice on arguments prevents optimizations in some JavaScript engines (V8 for example - more information). If you care for them, try constructing a new array by iterating through the arguments object instead. An alternative would be to use the despised Array constructor as a function:

-
var args = (arguments.length === 1 ? [arguments[0]] : Array.apply(null, arguments));
+
var args = (arguments.length === 1 ? [arguments[0]] : Array.apply(null, arguments));

You can use the arguments object if you call a function with more arguments than it is formally declared to accept. This technique is useful for functions that can be passed a variable number of arguments. Use arguments.length to determine the number of arguments passed to the function, and then process each argument by using the arguments object. To determine the number of parameters in the function signature, use the Function.length property.

@@ -64,17 +64,17 @@ const args = Array.from(arguments);

The typeof arguments returns 'object'. 

-
console.log(typeof arguments); // 'object' 
+
console.log(typeof arguments); // 'object' 

The typeof individual arguments can be determined with the use of indexing.

-
console.log(typeof arguments[0]); //this will return the typeof individual arguments.
+
console.log(typeof arguments[0]); //this will return the typeof individual arguments.

Using the Spread Syntax with Arguments

You can also use the {{jsxref("Array.from()")}} method or the spread operator to convert arguments to a real Array:

-
var args = Array.from(arguments);
+
var args = Array.from(arguments);
 var args = [...arguments];
 
@@ -97,14 +97,14 @@ var args = [...arguments];

This example defines a function that concatenates several strings. The only formal argument for the function is a string that specifies the characters that separate the items to concatenate. The function is defined as follows:

-
function myConcat(separator) {
+
function myConcat(separator) {
   var args = Array.prototype.slice.call(arguments, 1);
   return args.join(separator);
 }

You can pass any number of arguments to this function, and it creates a list using each argument as an item in the list.

-
// returns "red, orange, blue"
+
// returns "red, orange, blue"
 myConcat(', ', 'red', 'orange', 'blue');
 
 // returns "elephant; giraffe; lion; cheetah"
@@ -117,7 +117,7 @@ myConcat('. ', 'sage', 'basil', 'oregano', 'pepper', 'parsley');

This example defines a function that creates a string containing HTML for a list. The only formal argument for the function is a string that is "u" if the list is to be unordered (bulleted), or "o" if the list is to be ordered (numbered). The function is defined as follows:

-
function list(type) {
+
function list(type) {
   var result = '<' + type + 'l><li>';
   var args = Array.prototype.slice.call(arguments, 1);
   result += args.join('</li><li>');
@@ -128,7 +128,7 @@ myConcat('. ', 'sage', 'basil', 'oregano', 'pepper', 'parsley');

You can pass any number of arguments to this function, and it adds each argument as an item to a list of the type indicated. For example:

-
var listHTML = list('u', 'One', 'Two', 'Three');
+
var listHTML = list('u', 'One', 'Two', 'Three');
 
 /* listHTML is:
 
@@ -140,7 +140,7 @@ myConcat('. ', 'sage', 'basil', 'oregano', 'pepper', 'parsley');

The arguments object can be used in conjunction with rest, default, and destructured parameters.

-
function foo(...args) {
+
function foo(...args) {
   return args;
 }
 foo(1, 2, 3); // [1,2,3]
@@ -150,7 +150,7 @@ foo(1, 2, 3); // [1,2,3]
 
 

When a non-strict function does not contain restdefault, or destructured parameters, then the values in the arguments object do track the values of the arguments (and vice versa). See the code below:

-
function func(a) {
+
function func(a) {
   arguments[0] = 99; // updating arguments[0] also updates a
   console.log(a);
 }
@@ -159,7 +159,7 @@ func(10); // 99
 
 

and

-
function func(a) {
+
function func(a) {
   a = 99; // updating a also updates arguments[0]
   console.log(arguments[0]);
 }
@@ -168,7 +168,7 @@ func(10); // 99
 
 

When a non-strict function does contain restdefault, or destructured parameters, then the values in the arguments object do not track the values of the arguments (and vice versa). Instead, they reflect the arguments provided at the time of invocation:

-
function func(a = 55) {
+
function func(a = 55) {
   arguments[0] = 99; // updating arguments[0] does not also update a
   console.log(a);
 }
@@ -176,7 +176,7 @@ func(10); // 10

and

-
function func(a = 55) {
+
function func(a = 55) {
   a = 99; // updating a does not also update arguments[0]
   console.log(arguments[0]);
 }
@@ -185,7 +185,7 @@ func(10); // 10
 
 

and

-
function func(a = 55) {
+
function func(a = 55) {
   console.log(arguments[0]);
 }
 func(); // undefined
-- cgit v1.2.3-54-g00ecf