From d9e9adb5f80a819fe46349bcf6d1faec734b09cd Mon Sep 17 00:00:00 2001 From: Irvin Date: Wed, 16 Feb 2022 02:07:31 +0800 Subject: remove span tag in zh-CN --- .../web/javascript/about_javascript/index.html | 2 +- files/zh-cn/web/javascript/closures/index.html | 2 +- .../web/javascript/data_structures/index.html | 6 +- .../equality_comparisons_and_sameness/index.html | 4 +- files/zh-cn/web/javascript/eventloop/index.html | 24 +++--- .../control_flow_and_error_handling/index.html | 8 +- .../guide/expressions_and_operators/index.html | 62 +++++++------- .../web/javascript/guide/functions/index.html | 18 ++-- .../javascript/guide/grammar_and_types/index.html | 48 +++++------ files/zh-cn/web/javascript/guide/index.html | 32 ++++---- .../zh-cn/web/javascript/guide/modules/index.html | 6 +- .../regular_expressions/quantifiers/index.html | 2 +- .../unicode_property_escapes/index.html | 2 +- .../javascript/guide/text_formatting/index.html | 2 +- .../guide/working_with_objects/index.html | 28 +++---- .../web/javascript/language_resources/index.html | 4 +- .../web/javascript/reference/classes/index.html | 2 +- .../errors/cant_assign_to_property/index.html | 2 +- .../index.html | 2 +- .../missing_semicolon_before_statement/index.html | 12 +-- .../errors/negative_repetition_count/index.html | 2 +- .../errors/resulting_string_too_large/index.html | 4 +- .../reference/errors/undeclared_var/index.html | 10 +-- .../functions/arguments/callee/index.html | 4 +- .../reference/functions/arguments/index.html | 22 ++--- .../reference/functions/arrow_functions/index.html | 4 +- .../javascript/reference/functions/set/index.html | 2 +- .../global_objects/aggregateerror/index.html | 4 +- .../reference/global_objects/array/fill/index.html | 8 +- .../global_objects/array/findindex/index.html | 4 +- .../reference/global_objects/array/flat/index.html | 8 +- .../global_objects/array/flatmap/index.html | 8 +- .../global_objects/array/length/index.html | 24 +++--- .../reference/global_objects/array/of/index.html | 4 +- .../global_objects/array/reduce/index.html | 2 +- .../global_objects/array/reduceright/index.html | 6 +- .../reference/global_objects/array/some/index.html | 2 +- .../global_objects/array/tostring/index.html | 2 +- .../global_objects/array/unshift/index.html | 2 +- .../global_objects/arraybuffer/index.html | 2 +- .../reference/global_objects/atomics/index.html | 1 - .../global_objects/atomics/load/index.html | 2 +- .../global_objects/bigint64array/index.html | 9 +- .../global_objects/boolean/tosource/index.html | 16 ++-- .../global_objects/dataview/setbigint64/index.html | 2 +- .../dataview/setbiguint64/index.html | 2 +- .../reference/global_objects/date/date/index.html | 2 +- .../global_objects/date/getdate/index.html | 8 +- .../global_objects/date/getday/index.html | 8 +- .../global_objects/date/gethours/index.html | 6 +- .../global_objects/date/getmilliseconds/index.html | 6 +- .../global_objects/date/getminutes/index.html | 4 +- .../global_objects/date/getseconds/index.html | 4 +- .../reference/global_objects/date/now/index.html | 4 +- .../reference/global_objects/date/parse/index.html | 24 +++--- .../global_objects/date/setfullyear/index.html | 4 +- .../global_objects/date/sethours/index.html | 2 +- .../global_objects/date/setutcfullyear/index.html | 2 +- .../date/tolocaledatestring/index.html | 2 +- .../global_objects/date/tolocalestring/index.html | 4 +- .../date/tolocaletimestring/index.html | 4 +- .../reference/global_objects/decodeuri/index.html | 3 +- .../global_objects/decodeuricomponent/index.html | 4 +- .../reference/global_objects/error/index.html | 16 ++-- .../reference/global_objects/error/name/index.html | 4 +- .../global_objects/function/apply/index.html | 8 +- .../global_objects/function/caller/index.html | 4 +- .../reference/global_objects/generator/index.html | 6 +- .../global_objects/generator/throw/index.html | 2 +- .../reference/global_objects/globalthis/index.html | 2 +- .../javascript/reference/global_objects/index.html | 2 +- .../reference/global_objects/infinity/index.html | 10 +-- .../reference/global_objects/int32array/index.html | 2 +- .../global_objects/internalerror/index.html | 2 +- .../global_objects/intl/datetimeformat/index.html | 2 +- .../reference/global_objects/isfinite/index.html | 18 ++-- .../reference/global_objects/isnan/index.html | 8 +- .../reference/global_objects/json/index.html | 2 +- .../global_objects/map/foreach/index.html | 2 +- .../reference/global_objects/map/index.html | 2 +- .../reference/global_objects/math/abs/index.html | 2 +- .../reference/global_objects/math/cbrt/index.html | 4 +- .../reference/global_objects/math/clz32/index.html | 2 +- .../reference/global_objects/math/expm1/index.html | 2 +- .../reference/global_objects/math/floor/index.html | 2 +- .../reference/global_objects/math/imul/index.html | 4 +- .../reference/global_objects/math/log10/index.html | 2 +- .../reference/global_objects/math/pi/index.html | 8 +- .../reference/global_objects/math/pow/index.html | 2 +- .../global_objects/math/random/index.html | 20 ++--- .../reference/global_objects/math/sign/index.html | 12 +-- .../object/__definegetter__/index.html | 2 +- .../object/__definesetter__/index.html | 4 +- .../global_objects/object/create/index.html | 2 +- .../object/defineproperty/index.html | 6 +- .../object/getownpropertydescriptors/index.html | 16 ++-- .../reference/global_objects/object/is/index.html | 4 +- .../object/setprototypeof/index.html | 2 +- .../global_objects/object/tosource/index.html | 4 +- .../global_objects/object/tostring/index.html | 2 +- .../global_objects/object/valueof/index.html | 16 ++-- .../global_objects/object/values/index.html | 2 +- .../reference/global_objects/parsefloat/index.html | 18 ++-- .../reference/global_objects/parseint/index.html | 6 +- .../reference/global_objects/promise/index.html | 4 +- .../global_objects/promise/promise/index.html | 2 +- .../global_objects/promise/resolve/index.html | 2 +- .../proxy/proxy/setprototypeof/index.html | 2 +- .../index.html | 2 +- .../global_objects/reflect/construct/index.html | 6 +- .../global_objects/regexp/@@matchall/index.html | 2 +- .../global_objects/regexp/dotall/index.html | 4 +- .../global_objects/regexp/exec/index.html | 2 +- .../global_objects/regexp/sticky/index.html | 2 +- .../global_objects/set/foreach/index.html | 6 +- .../reference/global_objects/set/has/index.html | 22 ++--- .../reference/global_objects/set/set/index.html | 2 +- .../global_objects/string/fixed/index.html | 2 +- .../reference/global_objects/string/index.html | 4 +- .../global_objects/string/lastindexof/index.html | 2 +- .../global_objects/string/localecompare/index.html | 2 +- .../global_objects/string/match/index.html | 68 +++++++-------- .../global_objects/string/normalize/index.html | 2 +- .../global_objects/string/repeat/index.html | 96 +++++++++++----------- .../global_objects/string/replace/index.html | 2 +- .../global_objects/string/replaceall/index.html | 2 +- .../global_objects/string/slice/index.html | 2 +- .../global_objects/string/startswith/index.html | 2 +- .../global_objects/string/substr/index.html | 2 +- .../global_objects/string/substring/index.html | 2 +- .../global_objects/string/tolowercase/index.html | 2 +- .../reference/global_objects/symbol/index.html | 36 ++++---- .../global_objects/symbol/iterator/index.html | 2 +- .../global_objects/syntaxerror/index.html | 4 +- .../typedarray/bytes_per_element/index.html | 2 +- .../reference/global_objects/typedarray/index.html | 6 +- .../global_objects/typedarray/some/index.html | 2 +- .../global_objects/uint16array/index.html | 2 +- .../reference/global_objects/uint8array/index.html | 2 +- .../reference/global_objects/undefined/index.html | 6 +- .../global_objects/weakmap/get/index.html | 2 +- .../reference/global_objects/weakset/index.html | 2 +- .../webassembly/compileerror/index.html | 2 +- .../global_objects/webassembly/index.html | 6 +- files/zh-cn/web/javascript/reference/index.html | 2 +- .../reference/operators/assignment/index.html | 2 +- .../reference/operators/bitwise_not/index.html | 2 +- .../reference/operators/delete/index.html | 2 +- .../reference/operators/function/index.html | 4 +- .../javascript/reference/operators/new/index.html | 6 +- .../nullish_coalescing_operator/index.html | 2 +- .../operators/strict_inequality/index.html | 8 +- .../javascript/reference/operators/this/index.html | 2 +- .../reference/statements/break/index.html | 24 +++--- .../reference/statements/continue/index.html | 88 ++++++++++---------- .../reference/statements/debugger/index.html | 8 +- .../reference/statements/do...while/index.html | 22 ++--- .../reference/statements/empty/index.html | 4 +- .../reference/statements/export/index.html | 2 +- .../reference/statements/for-await...of/index.html | 2 +- .../reference/statements/for...in/index.html | 4 +- .../reference/statements/for...of/index.html | 2 +- .../reference/statements/function/index.html | 36 ++++---- .../reference/statements/function_star_/index.html | 2 +- .../reference/statements/if...else/index.html | 4 +- .../reference/statements/import/index.html | 2 +- .../web/javascript/reference/statements/index.html | 2 +- .../reference/statements/try...catch/index.html | 2 +- .../javascript/reference/strict_mode/index.html | 6 +- .../transitioning_to_strict_mode/index.html | 4 +- .../reference/template_literals/index.html | 12 +-- .../index.html | 2 +- 172 files changed, 658 insertions(+), 673 deletions(-) (limited to 'files/zh-cn/web/javascript') diff --git a/files/zh-cn/web/javascript/about_javascript/index.html b/files/zh-cn/web/javascript/about_javascript/index.html index 94b366cd08..7485b95427 100644 --- a/files/zh-cn/web/javascript/about_javascript/index.html +++ b/files/zh-cn/web/javascript/about_javascript/index.html @@ -10,7 +10,7 @@ translation_of: Web/JavaScript/About_JavaScript

什么是 JavaScript?

-

JavaScript® (通常简写为JS)是一种轻量的、解释性的、面向对象的头等函数语言,其最广为人知的应用是作为网页的脚本语言,但同时它也在很多非浏览器环境下使用。JS是一种动态的基于原型和多范式的脚本语言,支持面向对象、命令式和函数式的编程风格。

+

JavaScript® (通常简写为JS)是一种轻量的、解释性的、面向对象的头等函数语言,其最广为人知的应用是作为网页的脚本语言,但同时它也在很多非浏览器环境下使用。JS是一种动态的基于原型和多范式的脚本语言,支持面向对象、命令式和函数式的编程风格。

JavaScript运行在网页的客户端,能被用来设计和编程网页在事件发生时的行为。JavaScript不仅易学而且强大,因此广泛用于对网页的控制。

diff --git a/files/zh-cn/web/javascript/closures/index.html b/files/zh-cn/web/javascript/closures/index.html index c2a1cca928..4374a1571c 100644 --- a/files/zh-cn/web/javascript/closures/index.html +++ b/files/zh-cn/web/javascript/closures/index.html @@ -247,7 +247,7 @@ setupHelp();

运行这段代码后,您会发现它没有达到想要的效果。无论焦点在哪个input上,显示的都是关于年龄的信息。

-

原因是赋值给 onfocus 的是闭包。这些闭包是由他们的函数定义和在 setupHelp 作用域中捕获的环境所组成的。这三个闭包在循环中被创建,但他们共享了同一个词法作用域,在这个作用域中存在一个变量item。这是因为变量item使用var进行声明,由于变量提升,所以具有函数作用域。当onfocus的回调执行时,item.help的值被决定。由于循环在事件触发之前早已执行完毕,变量对象item(被三个闭包所共享)已经指向了helpText的最后一项。

+

原因是赋值给 onfocus 的是闭包。这些闭包是由他们的函数定义和在 setupHelp 作用域中捕获的环境所组成的。这三个闭包在循环中被创建,但他们共享了同一个词法作用域,在这个作用域中存在一个变量item。这是因为变量item使用var进行声明,由于变量提升,所以具有函数作用域。当onfocus的回调执行时,item.help的值被决定。由于循环在事件触发之前早已执行完毕,变量对象item(被三个闭包所共享)已经指向了helpText的最后一项。

解决这个问题的一种方案是使用更多的闭包:特别是使用前面所述的函数工厂:

diff --git a/files/zh-cn/web/javascript/data_structures/index.html b/files/zh-cn/web/javascript/data_structures/index.html index 8e1d7d433a..28273e864f 100644 --- a/files/zh-cn/web/javascript/data_structures/index.html +++ b/files/zh-cn/web/javascript/data_structures/index.html @@ -84,9 +84,9 @@ foo = true; // foo is a Boolean now 9007199254740993n -

可以对BigInt使用运算符+*-**%,就像对数字一样。BigInt 严格来说并不等于一个数字,但它是松散的。

+

可以对BigInt使用运算符+*-**%,就像对数字一样。BigInt 严格来说并不等于一个数字,但它是松散的。

-

在将BigInt转换为Boolean时,它的行为类似于一个数字:if||&&Boolean 和!。

+

在将BigInt转换为Boolean时,它的行为类似于一个数字:if||&&Boolean 和!。

BigInt不能与数字互换操作。否则,将抛出{{jsxref("TypeError")}}。

@@ -133,7 +133,7 @@ foo = true; // foo is a Boolean now

数据属性是键值对,并且每个数据属性拥有下列特性:

-

数据属性的特性(Attributes of a data property)

+

数据属性的特性(Attributes of a data property)

diff --git a/files/zh-cn/web/javascript/equality_comparisons_and_sameness/index.html b/files/zh-cn/web/javascript/equality_comparisons_and_sameness/index.html index 6ef100b114..f9ccd18faa 100644 --- a/files/zh-cn/web/javascript/equality_comparisons_and_sameness/index.html +++ b/files/zh-cn/web/javascript/equality_comparisons_and_sameness/index.html @@ -168,7 +168,7 @@ console.log(obj == undefined);

同值相等

-

同值相等解决了最后一个用例确定两个值是否在任何情况下功能上是相同的。(这个用例演示了里氏替换原则的实例。)当试图对不可变(immutable)属性修改时发生出现的情况:

+

同值相等解决了最后一个用例:确定两个值是否在任何情况下功能上是相同的。(这个用例演示了里氏替换原则的实例。)当试图对不可变(immutable)属性修改时发生出现的情况:

// 向 Nmuber 构造函数添加一个不可变的属性 NEGATIVE_ZERO
 Object.defineProperty(Number, "NEGATIVE_ZERO",
@@ -388,7 +388,7 @@ function attemptMutation(v)
  

显而易见,对0一元负操作得到-0。但表达式的抽象化可能在你没有意识到得情况下导致-0延续传播。例如当考虑下例时:

-
let stoppingForce = obj.mass * -obj.velocity
+
let stoppingForce = obj.mass * -obj.velocity
diff --git a/files/zh-cn/web/javascript/eventloop/index.html b/files/zh-cn/web/javascript/eventloop/index.html index 3decb3824e..42b31a8fde 100644 --- a/files/zh-cn/web/javascript/eventloop/index.html +++ b/files/zh-cn/web/javascript/eventloop/index.html @@ -13,7 +13,7 @@ translation_of: Web/JavaScript/EventLoop ---
{{JsSidebar("Advanced")}}
-

JavaScript有一个基于事件循环的并发模型,事件循环负责执行代码、收集和处理事件以及执行队列中的子任务。这个模型与其它语言中的模型截然不同,比如 C 和 Java。

+

JavaScript有一个基于事件循环的并发模型,事件循环负责执行代码、收集和处理事件以及执行队列中的子任务。这个模型与其它语言中的模型截然不同,比如 C 和 Java。

运行时概念

@@ -77,19 +77,19 @@ console.log(bar(7)); // 返回 42

下面的例子演示了这个概念(setTimeout 并不会在计时器到期之后直接执行):

-
const s = new Date().getSeconds();
+
const s = new Date().getSeconds();
 
-setTimeout(function() {
-  // 输出 "2",表示回调函数并没有在 500 毫秒之后立即执行
-  console.log("Ran after " + (new Date().getSeconds() - s) + " seconds");
-}, 500);
+setTimeout(function() {
+  // 输出 "2",表示回调函数并没有在 500 毫秒之后立即执行
+  console.log("Ran after " + (new Date().getSeconds() - s) + " seconds");
+}, 500);
 
-while(true) {
-  if(new Date().getSeconds() - s >= 2) {
-    console.log("Good, looped for 2 seconds");
-    break;
-  }
-}
+while(true) { + if(new Date().getSeconds() - s >= 2) { + console.log("Good, looped for 2 seconds"); + break; + } +}

零延迟

diff --git a/files/zh-cn/web/javascript/guide/control_flow_and_error_handling/index.html b/files/zh-cn/web/javascript/guide/control_flow_and_error_handling/index.html index b2fe41baef..08bbb7ae5b 100644 --- a/files/zh-cn/web/javascript/guide/control_flow_and_error_handling/index.html +++ b/files/zh-cn/web/javascript/guide/control_flow_and_error_handling/index.html @@ -7,7 +7,7 @@ translation_of: Web/JavaScript/Guide/Control_flow_and_error_handling ---

{{jsSidebar("JavaScript Guide")}}{{PreviousNext("Web/JavaScript/Guide/Grammar_and_Types", "Web/JavaScript/Guide/Loops_and_iteration")}}

-

JavaScript 提供一套灵活的语句集,特别是控制流语句,你可以用它在你的应用程序中实现大量的交互性功能。本章节我们将带来关于JavaScript语句的一些概览。

+

JavaScript 提供一套灵活的语句集,特别是控制流语句,你可以用它在你的应用程序中实现大量的交互性功能。本章节我们将带来关于JavaScript语句的一些概览。

 这一章中的语句,在 JavaScript参考 中包含更为详尽的细节。在 JavaScript 代码中,分号(;)字符被用来分割语句。

@@ -132,9 +132,9 @@ alert(x); // 输出的结果为 2

请不要混淆原始的布尔值truefalse 与 {{jsxref("Boolean")}}对象的真和假。例如:

-
var b = new Boolean(false);
-if (b) //结果视为真
-if (b == true) // 结果视为假
+
var b = new Boolean(false);
+if (b) //结果视为真
+if (b == true) // 结果视为假

示例

diff --git a/files/zh-cn/web/javascript/guide/expressions_and_operators/index.html b/files/zh-cn/web/javascript/guide/expressions_and_operators/index.html index 62d4b97ab5..c89cc966e5 100644 --- a/files/zh-cn/web/javascript/guide/expressions_and_operators/index.html +++ b/files/zh-cn/web/javascript/guide/expressions_and_operators/index.html @@ -136,22 +136,22 @@ translation_of: Web/JavaScript/Guide/Expressions_and_Operators

对于更复杂的赋值,解构赋值语法是一个能从数组或对象对应的数组结构或对象字面量里提取数据的 Javascript 表达式。

-
var foo = ["one", "two", "three"];
+
var foo = ["one", "two", "three"];
 
-// 不使用解构
-var one   = foo[0];
-var two   = foo[1];
-var three = foo[2];
+// 不使用解构
+var one   = foo[0];
+var two   = foo[1];
+var three = foo[2];
 
-// 使用解构
-var [one, two, three] = foo;
+// 使用解构 +var [one, two, three] = foo;

比较运算符

比较运算符比较它的操作数并返回一个基于表达式是否为真的逻辑值。操作数可以是数字,字符串,逻辑,对象值。字符串比较是基于标准的字典顺序,使用Unicode值。在多数情况下,如果两个操作数不是相同的类型, JavaScript 会尝试转换它们为恰当的类型来比较。这种行为通常发生在数字作为操作数的比较。类型转换的例外是使用 ===!== 操作符,它们会执行严格的相等和不相等比较。这些运算符不会在检查相等之前转换操作数的类型。下面的表格描述了该示例代码中的各比较运算符

-
var var1 = 3;
-var var2 = 4;
+
var var1 = 3;
+var var2 = 4;
@@ -222,7 +222,7 @@ translation_of: Web/JavaScript/Guide/Expressions_and_Operators

算术运算符

-

算术运算符使用数值(字面量或者变量)作为操作数并返回一个数值.标准的算术运算符就是加减乘除(+ - * /)。当操作数是浮点数时,这些运算符表现得跟它们在大多数编程语言中一样(特殊要注意的是,除零会产生{{jsxref("Infinity")}})。例如:

+

算术运算符使用数值(字面量或者变量)作为操作数并返回一个数值.标准的算术运算符就是加减乘除(+ - * /)。当操作数是浮点数时,这些运算符表现得跟它们在大多数编程语言中一样(特殊要注意的是,除零会产生{{jsxref("Infinity")}})。例如:

1 / 2;  // 0.5
 1 / 2 == 1.0 / 2.0; // true
@@ -432,7 +432,7 @@ After:              10100000000000000110000000000001

移位运算符

-

移位运算符带两个操作数:第一个是待移位的数,第二个是指定第一个数要被移多少位的数。移位的方向由运算符来控制.

+

移位运算符带两个操作数:第一个是待移位的数,第二个是指定第一个数要被移多少位的数。移位的方向由运算符来控制.

移位运算符把操作数转为32bit整数,然后得出一个与待移位数相同种类的值。

@@ -551,7 +551,7 @@ var n3 = !"Cat"; // !t returns false

例如,

-
console.log("my " + "string"); // console logs the string "my string".
+
console.log("my " + "string"); // console logs the string "my string".

简写操作符 += 也可以用来拼接字符串,例如:

@@ -719,12 +719,12 @@ void expression

如下创建了一个超链接文本,当用户单击该文本时,不会有任何效果。

-
<a href="javascript:void(0)">Click here to do nothing</a>
+
<a href="javascript:void(0)">Click here to do nothing</a>

下面的代码创建了一个超链接,当用户单击它时,提交一个表单。

-
<a href="javascript:void(document.form.submit())">
-Click here to submit</a>
+
<a href="javascript:void(document.form.submit())">
+Click here to submit</a>

关系操作符

@@ -913,20 +913,20 @@ this.propertyName

分组操作符()控制了表达式中计算的优先级. 举例来说, 你可以改变先乘除后加减的顺序,转而先计算加法。

-
var a = 1;
-var b = 2;
-var c = 3;
+
var a = 1;
+var b = 2;
+var c = 3;
 
-// 默认优先级
-a + b * c     // 7
-// 默认是这样计算的
-a + (b * c)   // 7
+// 默认优先级
+a + b * c     // 7
+// 默认是这样计算的
+a + (b * c)   // 7
 
-// 现在使加法优先于乘法
-(a + b) * c   // 9
+// 现在使加法优先于乘法
+(a + b) * c   // 9
 
-// 这等价于
-a * c + b * c // 9
+// 这等价于 +a * c + b * c // 9
数值推导
@@ -941,12 +941,12 @@ a * c +

Comprehensions特性被许多编程语言所采用,该特性能够使你快速地通过一个已有的数组来创建出一个新的数组,比如:

-
[for (i of [ 1, 2, 3 ]) i*i ];
-// [ 1, 4, 9 ]
+
[for (i of [ 1, 2, 3 ]) i*i ];
+// [ 1, 4, 9 ]
 
-var abc = [ "A", "B", "C" ];
-[for (letters of abc) letters.toLowerCase()];
-// [ "a", "b", "c" ]
+var abc = [ "A", "B", "C" ]; +[for (letters of abc) letters.toLowerCase()]; +// [ "a", "b", "c" ]

左值表达式

diff --git a/files/zh-cn/web/javascript/guide/functions/index.html b/files/zh-cn/web/javascript/guide/functions/index.html index bf26ec3c8e..3d43d61305 100644 --- a/files/zh-cn/web/javascript/guide/functions/index.html +++ b/files/zh-cn/web/javascript/guide/functions/index.html @@ -468,15 +468,15 @@ getCode(); // Returns the secret code

例如,设想有一个用来连接字符串的函数。唯一事先确定的参数是在连接后的字符串中用来分隔各个连接部分的字符(译注:比如例子里的分号“;”)。该函数定义如下:

-
function myConcat(separator) {
-   var result = ''; // 把值初始化成一个字符串,这样就可以用来保存字符串了!!
-   var i;
-   // iterate through arguments
-   for (i = 1; i < arguments.length; i++) {
-      result += arguments[i] + separator;
-   }
-   return result;
-}
+
function myConcat(separator) {
+   var result = ''; // 把值初始化成一个字符串,这样就可以用来保存字符串了!!
+   var i;
+   // iterate through arguments
+   for (i = 1; i < arguments.length; i++) {
+      result += arguments[i] + separator;
+   }
+   return result;
+}

你可以给这个函数传递任意数量的参数,它会将各个参数连接成一个字符串“列表”:

diff --git a/files/zh-cn/web/javascript/guide/grammar_and_types/index.html b/files/zh-cn/web/javascript/guide/grammar_and_types/index.html index 8b00401fcc..9a3aa594c3 100644 --- a/files/zh-cn/web/javascript/guide/grammar_and_types/index.html +++ b/files/zh-cn/web/javascript/guide/grammar_and_types/index.html @@ -109,7 +109,7 @@ if(input === undefined){ } -

The following is related to "Variables" section as potential values in assignment.undefined 值在布尔类型环境中会被当作 false 。例如,下面的代码将会执行函数 myFunction,因为数组 myArray 中的元素未被赋值:

+

The following is related to "Variables" section as potential values in assignment.undefined 值在布尔类型环境中会被当作 false 。例如,下面的代码将会执行函数 myFunction,因为数组 myArray 中的元素未被赋值:

var myArray = [];
 if (!myArray[0])   myFunction();
@@ -148,7 +148,7 @@ console.log(y); // ReferenceError: y 没有被声明

变量提升

-

JavaScript 变量的另一个不同寻常的地方是,你可以先使用变量稍后再声明变量而不会引发异常。这一概念称为变量提升;JavaScript 变量感觉上是被“提升”或移到了函数或语句的最前面。但是,提升后的变量将返回 undefined 值。因此在使用或引用某个变量之后进行声明和初始化操作,这个被提升的变量仍将返回 undefined 值。

+

JavaScript 变量的另一个不同寻常的地方是,你可以先使用变量稍后再声明变量而不会引发异常。这一概念称为变量提升;JavaScript 变量感觉上是被“提升”或移到了函数或语句的最前面。但是,提升后的变量将返回 undefined 值。因此在使用或引用某个变量之后进行声明和初始化操作,这个被提升的变量仍将返回 undefined 值。

/**
  * 例子1
@@ -219,7 +219,7 @@ var baz = function() {
 
 

全局变量

-

need links to pages discussing scope chains and the global object 实际上,全局变量是全局对象的属性。在网页中,(译注:缺省的)全局对象是 window ,所以你可以用形如 window.variable 的语法来设置和访问全局变量。

+

need links to pages discussing scope chains and the global object 实际上,全局变量是全局对象的属性。在网页中,(译注:缺省的)全局对象是 window ,所以你可以用形如 window.variable 的语法来设置和访问全局变量。

因此,你可以通过指定 window 或 frame 的名字,在当前 window 或 frame 访问另一个 window 或 frame 中声明的变量。例如,在文档里声明一个叫 phoneNumber 的变量,那么你就可以在子框架里使用 parent.phoneNumber 的方式来引用它。

@@ -402,7 +402,7 @@ console.log(a[0]); // 3

布尔类型有两种字面量:truefalse

-

不要混淆作为布尔对象的真和假与布尔类型的原始值true和false。布尔对象是原始布尔数据类型的一个包装器。参见 布尔对象

+

不要混淆作为布尔对象的真和假与布尔类型的原始值true和false。布尔对象是原始布尔数据类型的一个包装器。参见 布尔对象

整数 (Integers)

@@ -411,10 +411,10 @@ console.log(a[0]); // 3

整数可以用十进制(基数为10)、十六进制(基数为16)、八进制(基数为8)以及二进制(基数为2)表示。

严格模式下,八进制整数字面量必须以0o或0O开头,而不能以0开头。

@@ -431,7 +431,7 @@ console.log(a[0]); // 3

浮点数字面值可以有以下的组成部分:

比较运算符
@@ -106,6 +106,6 @@ translation_of: Web/JavaScript/Language_Resources

相关链接

diff --git a/files/zh-cn/web/javascript/reference/classes/index.html b/files/zh-cn/web/javascript/reference/classes/index.html index 89045127bf..fdf7cd4f6e 100644 --- a/files/zh-cn/web/javascript/reference/classes/index.html +++ b/files/zh-cn/web/javascript/reference/classes/index.html @@ -143,7 +143,7 @@ console.log(Point.distance(p1, p2));

用原型和静态方法绑定 this

-

当调用静态或原型方法时没有指定 this 的值,那么方法内的 this 值将被置为 undefined。即使你未设置 "use strict" ,因为 class 体内部的代码总是在严格模式下执行。

+

当调用静态或原型方法时没有指定 this 的值,那么方法内的 this 值将被置为 undefined。即使你未设置 "use strict" ,因为 class 体内部的代码总是在严格模式下执行。

class Animal {
   speak() {
diff --git a/files/zh-cn/web/javascript/reference/errors/cant_assign_to_property/index.html b/files/zh-cn/web/javascript/reference/errors/cant_assign_to_property/index.html
index 8997836b20..04853a2c53 100644
--- a/files/zh-cn/web/javascript/reference/errors/cant_assign_to_property/index.html
+++ b/files/zh-cn/web/javascript/reference/errors/cant_assign_to_property/index.html
@@ -32,7 +32,7 @@ TypeError: Cannot create property 'x' on {y} (Chrome)
 
 var foo = "my string";
 // 下面这行代码在非严格模式下不会执行.
-foo.bar = {}; // TypeError: can't assign to property "bar" on "my string": not an object
+foo.bar = {}; // TypeError: can't assign to property "bar" on "my string": not an object
 

如何正确使用

diff --git a/files/zh-cn/web/javascript/reference/errors/deprecated_caller_or_arguments_usage/index.html b/files/zh-cn/web/javascript/reference/errors/deprecated_caller_or_arguments_usage/index.html index cfafd9c155..37df78c1d8 100644 --- a/files/zh-cn/web/javascript/reference/errors/deprecated_caller_or_arguments_usage/index.html +++ b/files/zh-cn/web/javascript/reference/errors/deprecated_caller_or_arguments_usage/index.html @@ -20,7 +20,7 @@ TypeError: 'callee' and 'caller' cannot be accessed in strict mode. (Safari)

错误类型

-

仅在严格模式下出现的 {{jsxref("ReferenceError")}} 警告。JavaScript 的执行将不会停止。

+

仅在严格模式下出现的 {{jsxref("ReferenceError")}} 警告。JavaScript 的执行将不会停止。

发生了什么?

diff --git a/files/zh-cn/web/javascript/reference/errors/missing_semicolon_before_statement/index.html b/files/zh-cn/web/javascript/reference/errors/missing_semicolon_before_statement/index.html index e3e6a98c88..37c45bb0df 100644 --- a/files/zh-cn/web/javascript/reference/errors/missing_semicolon_before_statement/index.html +++ b/files/zh-cn/web/javascript/reference/errors/missing_semicolon_before_statement/index.html @@ -61,15 +61,15 @@ array[0] = "there";

如果你用的是另一种编程语言,那么在javaScript中使用不具有相同或完全没有意义的关键字也是很常见的:

-
def print(info){
-  console.log(info);
-}; // SyntaxError missing ; before statement
+
def print(info){
+  console.log(info);
+}; // SyntaxError missing ; before statement

因此,建议使用function而不是def

-
function print(info){
-  console.log(info);
-};
+
function print(info){
+  console.log(info);
+};

 

diff --git a/files/zh-cn/web/javascript/reference/errors/negative_repetition_count/index.html b/files/zh-cn/web/javascript/reference/errors/negative_repetition_count/index.html index 780bdabcf4..94a79e94a8 100644 --- a/files/zh-cn/web/javascript/reference/errors/negative_repetition_count/index.html +++ b/files/zh-cn/web/javascript/reference/errors/negative_repetition_count/index.html @@ -22,7 +22,7 @@ RangeError: Invalid count value (Chrome)

发生了什么?

-

代码中使用了 {{jsxref("String.prototype.repeat()")}}方法。它有一个计数参数,表示重复该字符串的次数。该参数必须在 0 及正 {{jsxref("Infinity")}} 之间,且不能为负数。该值的合法范围可以这样表示: [0, +∞)。

+

代码中使用了 {{jsxref("String.prototype.repeat()")}}方法。它有一个计数参数,表示重复该字符串的次数。该参数必须在 0 及正 {{jsxref("Infinity")}} 之间,且不能为负数。该值的合法范围可以这样表示: [0, +∞)。

示例

diff --git a/files/zh-cn/web/javascript/reference/errors/resulting_string_too_large/index.html b/files/zh-cn/web/javascript/reference/errors/resulting_string_too_large/index.html index eaac0884fb..261ad7b72d 100644 --- a/files/zh-cn/web/javascript/reference/errors/resulting_string_too_large/index.html +++ b/files/zh-cn/web/javascript/reference/errors/resulting_string_too_large/index.html @@ -23,9 +23,9 @@ RangeError: Invalid count value (Chrome)

发生了什么?

-

代码中使用了 {{jsxref("String.prototype.repeat()")}}方法。它有一个计数参数,表示重复该字符串的次数。该参数必须在 0 及正 {{jsxref("Infinity")}} 之间,且不能为负数。该值的合法范围可以这样表示: [0, +∞)。

+

代码中使用了 {{jsxref("String.prototype.repeat()")}}方法。它有一个计数参数,表示重复该字符串的次数。该参数必须在 0 及正 {{jsxref("Infinity")}} 之间,且不能为负数。该值的合法范围可以这样表示: [0, +∞)。

-

其结果字符串也不能长于最大字符串,不同 JavaScript 引擎中可能有所不同。 在 Firefox (SpiderMonkey) 里最大字符串大小为 228 -1 (0xFFFFFFF)。

+

其结果字符串也不能长于最大字符串,不同 JavaScript 引擎中可能有所不同。 在 Firefox (SpiderMonkey) 里最大字符串大小为 228 -1 (0xFFFFFFF)。

示例

diff --git a/files/zh-cn/web/javascript/reference/errors/undeclared_var/index.html b/files/zh-cn/web/javascript/reference/errors/undeclared_var/index.html index 507da98563..722965d574 100644 --- a/files/zh-cn/web/javascript/reference/errors/undeclared_var/index.html +++ b/files/zh-cn/web/javascript/reference/errors/undeclared_var/index.html @@ -24,14 +24,14 @@ ReferenceError: Variable undefined in strict mode (Edge)

发生了什么?

-

在代码里赋值了一个未声明的变量。换句话说,有处没有带着 var 关键字的赋值。事实上已声明的和未声明的变量之间有一些差异,这可能会导致意想不到的结果,这就是为什么 JavaScript 在严格模式打印出这种错误。

+

在代码里赋值了一个未声明的变量。换句话说,有处没有带着 var 关键字的赋值。事实上已声明的和未声明的变量之间有一些差异,这可能会导致意想不到的结果,这就是为什么 JavaScript 在严格模式打印出这种错误。

-

关于已声明和未声明的变量,其有三个注意事项:

+

关于已声明和未声明的变量,其有三个注意事项:

更多信息及例子,请参考 var 页面。

diff --git a/files/zh-cn/web/javascript/reference/functions/arguments/callee/index.html b/files/zh-cn/web/javascript/reference/functions/arguments/callee/index.html index c4682f0885..f610b26d54 100644 --- a/files/zh-cn/web/javascript/reference/functions/arguments/callee/index.html +++ b/files/zh-cn/web/javascript/reference/functions/arguments/callee/index.html @@ -88,7 +88,7 @@ sillyFunction();

递归函数必须能够引用它本身。很典型的,函数通过自己的名字调用自己。然而,匿名函数 (通过 函数表达式 或者 函数构造器 创建) 没有名称。因此如果没有可访问的变量指向该函数,唯一能引用它的方式就是通过 arguments.callee

-

下面的例子定义了一个函数,按流程,定义并返回了一个阶乘函数。该例并不是很实用,并且几乎都能够用 命名函数表达式 实现同样结果的例子, and there are nearly no cases where the same result cannot be achieved with .

+

下面的例子定义了一个函数,按流程,定义并返回了一个阶乘函数。该例并不是很实用,并且几乎都能够用 命名函数表达式 实现同样结果的例子, and there are nearly no cases where the same result cannot be achieved with .

function create() {
    return function(n) {
@@ -103,7 +103,7 @@ var result = create()(5); // returns 120 (5 * 4 * 3 * 2 * 1)
 
 

没有替代方案的 arguments.callee

-

当你必须要使用Function构造函数时,下面的例子是没有可以替代 arguments.callee 的方案的,因此弃用它时会产生一个BUG (参看 {{Bug("725398")}}):

+

当你必须要使用Function构造函数时,下面的例子是没有可以替代 arguments.callee 的方案的,因此弃用它时会产生一个BUG (参看 {{Bug("725398")}}):

function createPerson (sIdentity) {
     var oPerson = new Function("alert(arguments.callee.identity);");
diff --git a/files/zh-cn/web/javascript/reference/functions/arguments/index.html b/files/zh-cn/web/javascript/reference/functions/arguments/index.html
index 937a5f7e7c..0cc7216837 100644
--- a/files/zh-cn/web/javascript/reference/functions/arguments/index.html
+++ b/files/zh-cn/web/javascript/reference/functions/arguments/index.html
@@ -156,24 +156,24 @@ myConcat(". ", "sage", "basil", "oregano", "pepper", "parsley");

这个例子定义了一个函数通过一个字符串来创建HTML列表。这个函数唯一正式声明了的参数是一个字符。当该参数为 "u" 时,创建一个无序列表 (项目列表);当该参数为 "o" 时,则创建一个有序列表 (编号列表)。该函数定义如下:

-
function list(type) {
-  var result = "<" + type + "l><li>";
-  var args = Array.prototype.slice.call(arguments, 1);
-  result += args.join("</li><li>");
-  result += "</li></" + type + "l>"; // end list
-
-  return result;
-}
+
function list(type) {
+  var result = "<" + type + "l><li>";
+  var args = Array.prototype.slice.call(arguments, 1);
+  result += args.join("</li><li>");
+  result += "</li></" + type + "l>"; // end list
+
+  return result;
+}

你可以传递任意数量的参数到该函数,并将每个参数作为一个项添加到指定类型的列表中。例如:

-
var listHTML = list("u", "One", "Two", "Three");
+
var listHTML = list("u", "One", "Two", "Three");
 
-/* listHTML is:
+/* listHTML is:
 
 "<ul><li>One</li><li>Two</li><li>Three</li></ul>"
 
-*/
+*/
 

剩余参数、默认参数和解构赋值参数

diff --git a/files/zh-cn/web/javascript/reference/functions/arrow_functions/index.html b/files/zh-cn/web/javascript/reference/functions/arrow_functions/index.html index f006d987cf..674dcf9ad0 100644 --- a/files/zh-cn/web/javascript/reference/functions/arrow_functions/index.html +++ b/files/zh-cn/web/javascript/reference/functions/arrow_functions/index.html @@ -96,7 +96,7 @@ elements.map(({ "length": lengthFooBArX }) => lengthFooBArX); // [8, 6, 7, 9]
  • 如果该函数是一个构造函数,this指针指向一个新的对象
  • -
  • 在严格模式下的函数调用下,this指向undefined
  • +
  • 在严格模式下的函数调用下,this指向undefined
  • 如果该函数是一个对象的方法,则它的this指针指向这个对象
  • 等等
@@ -153,7 +153,7 @@ f() === window; // 或者 global

通过 call 或 apply 调用

-

由于 箭头函数没有自己的this指针,通过 call() 或 apply() 方法调用一个函数时,只能传递参数(不能绑定this---译者注),他们的第一个参数会被忽略。(这种现象对于bind方法同样成立---译者注)

+

由于 箭头函数没有自己的this指针,通过 call() 或 apply() 方法调用一个函数时,只能传递参数(不能绑定this---译者注),他们的第一个参数会被忽略。(这种现象对于bind方法同样成立---译者注)

var adder = {
   base : 1,
diff --git a/files/zh-cn/web/javascript/reference/functions/set/index.html b/files/zh-cn/web/javascript/reference/functions/set/index.html
index 4a17cc76e5..2623cf4781 100644
--- a/files/zh-cn/web/javascript/reference/functions/set/index.html
+++ b/files/zh-cn/web/javascript/reference/functions/set/index.html
@@ -102,7 +102,7 @@ obj.foo = "baz";      // run the setter
 console.log(obj.baz); // "baz"
 
-

规范

+

规范

diff --git a/files/zh-cn/web/javascript/reference/global_objects/aggregateerror/index.html b/files/zh-cn/web/javascript/reference/global_objects/aggregateerror/index.html index ddc0486653..ff68e4fc49 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/aggregateerror/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/aggregateerror/index.html @@ -48,7 +48,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/AggregateError

示例

-

捕获一个AggregateError

+

捕获一个AggregateError

Promise.any([
   Promise.reject(new Error("some error")),
@@ -85,7 +85,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/AggregateError
   
   
- + diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/fill/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/fill/index.html index 955cbc9d6a..6879a6b985 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/fill/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/fill/index.html @@ -36,13 +36,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/fill

描述

-

fill 方法接受三个参数 value, start 以及 end. startend 参数是可选的, 其默认值分别为 0 和 this 对象的 length 属性值。

+

fill 方法接受三个参数 value, start 以及 endstartend 参数是可选的, 其默认值分别为 0 和 this 对象的 length 属性值。

-

如果 start 是个负数, 则开始索引会被自动计算成为 length+start, 其中 length 是 this 对象的 length 属性值。如果 end 是个负数, 则结束索引会被自动计算成为 length+end

+

如果 start 是个负数, 则开始索引会被自动计算成为 length+start, 其中 length 是 this 对象的 length 属性值。如果 end 是个负数, 则结束索引会被自动计算成为 length+end

-

fill 方法故意被设计成通用方法, 该方法不要求 this 是数组对象。

+

fill 方法故意被设计成通用方法, 该方法不要求 this 是数组对象。

-

fill 方法是个可变方法, 它会改变调用它的 this 对象本身, 然后返回它, 而并不是返回一个副本。

+

fill 方法是个可变方法, 它会改变调用它的 this 对象本身, 然后返回它, 而并不是返回一个副本。

当一个对象被传递给 fill方法的时候, 填充数组的是这个对象的引用。

diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/findindex/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/findindex/index.html index 9a58426f8d..7b1e3c7143 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/findindex/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/findindex/index.html @@ -37,7 +37,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/findIndex
thisArg
-
可选。执行callback时作为this对象的值.
+
可选。执行callback时作为this对象的值.

返回值

@@ -60,7 +60,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/findIndex

查找数组中首个质数元素的索引

-

以下示例查找数组中素数的元素的索引(如果不存在素数,则返回-1)。

+

以下示例查找数组中素数的元素的索引(如果不存在素数,则返回-1)。

function isPrime(element, index, array) {
   var start = 2;
diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/flat/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/flat/index.html
index 5346c65b82..2f37e8f49b 100644
--- a/files/zh-cn/web/javascript/reference/global_objects/array/flat/index.html
+++ b/files/zh-cn/web/javascript/reference/global_objects/array/flat/index.html
@@ -81,10 +81,10 @@ const flattened = arr => [].concat(...arr);
// 使用 reduce、concat 和递归展开无限多层嵌套的数组
 var arr1 = [1,2,3,[1,2,3,4, [2,3,4]]];
 
-function flatDeep(arr, d = 1) {
-   return d > 0 ? arr.reduce((acc, val) => acc.concat(Array.isArray(val) ? flatDeep(val, d - 1) : val), [])
-                : arr.slice();
-};
+function flatDeep(arr, d = 1) {
+   return d > 0 ? arr.reduce((acc, val) => acc.concat(Array.isArray(val) ? flatDeep(val, d - 1) : val), [])
+                : arr.slice();
+};
 
 flatDeep(arr1, Infinity);
 // [1, 2, 3, 1, 2, 3, 4, 2, 3, 4]
diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/flatmap/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/flatmap/index.html index 001ea6c5a9..50c75a73ab 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/flatmap/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/flatmap/index.html @@ -54,13 +54,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/flatMap

map() 与 flatMap()

-
var arr1 = [1, 2, 3, 4];
+
var arr1 = [1, 2, 3, 4];
 
-arr1.map(x => [x * 2]);
+arr1.map(x => [x * 2]);
 // [[2], [4], [6], [8]]
 
-arr1.flatMap(x => [x * 2]);
-// [2, 4, 6, 8]
+arr1.flatMap(x => [x * 2]);
+// [2, 4, 6, 8]
 
 // only one level is flattened
 arr1.flatMap(x => [[x * 2]]);
diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/length/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/length/index.html
index 7b126495fb..8f17e9af1f 100644
--- a/files/zh-cn/web/javascript/reference/global_objects/array/length/index.html
+++ b/files/zh-cn/web/javascript/reference/global_objects/array/length/index.html
@@ -82,25 +82,25 @@ function printEntries(arr) {
 
 

下面的例子中,通过数组下标遍历数组元素,并把每个元素的值修改为原值的2倍。

-
var numbers = [1, 2, 3, 4, 5];
-var length = numbers.length;
-for (var i = 0; i < length; i++) {
-  numbers[i] *= 2;
-}
-// 遍历后的结果 [2, 4, 6, 8, 10]
+
var numbers = [1, 2, 3, 4, 5];
+var length = numbers.length;
+for (var i = 0; i < length; i++) {
+  numbers[i] *= 2;
+}
+// 遍历后的结果 [2, 4, 6, 8, 10]

截断数组

下面的例子中,如果数组长度大于 3,则把该数组的长度截断为 3 。

-
var numbers = [1, 2, 3, 4, 5];
+
var numbers = [1, 2, 3, 4, 5];
 
-if (numbers.length > 3) {
-  numbers.length = 3;
-}
+if (numbers.length > 3) {
+  numbers.length = 3;
+}
 
-console.log(numbers); // [1, 2, 3]
-console.log(numbers.length); // 3
+console.log(numbers); // [1, 2, 3] +console.log(numbers.length); // 3

规范

diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/of/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/of/index.html index 4636c06bdb..25e4a88a23 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/of/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/of/index.html @@ -45,8 +45,8 @@ Array(1, 2, 3); // [1, 2, 3]

示例

-
Array.of(1);         // [1]
-Array.of(1, 2, 3);   // [1, 2, 3]
+
Array.of(1);         // [1]
+Array.of(1, 2, 3);   // [1, 2, 3]
 Array.of(undefined); // [undefined]
 
diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/reduce/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/reduce/index.html index 75edc90a73..f356bceaf6 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/reduce/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/reduce/index.html @@ -79,7 +79,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/Reduce
  • array 数组
  • -

    回调函数第一次执行时,accumulatorcurrentValue的取值有两种情况:如果调用reduce()时提供了initialValueaccumulator取值为initialValuecurrentValue取数组中的第一个值;如果没有提供 initialValue,那么accumulator取数组中的第一个值,currentValue取数组中的第二个值。

    +

    回调函数第一次执行时,accumulatorcurrentValue的取值有两种情况:如果调用reduce()时提供了initialValueaccumulator取值为initialValuecurrentValue取数组中的第一个值;如果没有提供 initialValue,那么accumulator取数组中的第一个值,currentValue取数组中的第二个值。

    注意:如果没有提供initialValue,reduce 会从索引1的地方开始执行 callback 方法,跳过第一个索引。如果提供initialValue,从索引0开始。

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/reduceright/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/reduceright/index.html index e4846dbfbf..94ef4c7602 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/reduceright/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/reduceright/index.html @@ -29,9 +29,9 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/ReduceRight
    一个回调函数,用于操作数组中的每个元素,它可接受四个参数:
    accumulator
    -
    累加器:上一次调用回调函数时,回调函数返回的值。首次调用回调函数时,如果 initialValue 存在,累加器即为 initialValue,否则须为数组中的最后一个元素(详见下方 initialValue 处相关说明)。
    +
    累加器:上一次调用回调函数时,回调函数返回的值。首次调用回调函数时,如果 initialValue 存在,累加器即为 initialValue,否则须为数组中的最后一个元素(详见下方 initialValue 处相关说明)。
    currentValue
    -
    当前元素:当前被处理的元素。
    +
    当前元素:当前被处理的元素。
    index{{optional_inline}}
    数组中当前被处理的元素的索引。
    array{{optional_inline}}
    @@ -39,7 +39,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/ReduceRight
    initialValue{{optional_inline}} 
    -
    首次调用 callback 函数时,累加器 accumulator 的值。如果未提供该初始值,则将使用数组中的最后一个元素,并跳过该元素。如果不给出初始值,则需保证数组不为空。
    +
    首次调用 callback 函数时,累加器 accumulator 的值。如果未提供该初始值,则将使用数组中的最后一个元素,并跳过该元素。如果不给出初始值,则需保证数组不为空。
    否则,在空数组上调用 reducereduceRight 且未提供初始值(例如 [].reduce( (acc, cur, idx, arr) => {} ) )的话,会导致类型错误 TypeError: reduce of empty array with no initial value

    返回值

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/some/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/some/index.html index 426e6b16a6..c6e408edd2 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/some/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/some/index.html @@ -50,7 +50,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/some

    some() 为数组中的每一个元素执行一次 callback 函数,直到找到一个使得 callback 返回一个“真值”(即可转换为布尔值 true 的值)。如果找到了这样一个值,some() 将会立即返回 true。否则,some() 返回 falsecallback 只会在那些”有值“的索引上被调用,不会在那些被删除或从来未被赋值的索引上调用。

    -

    callback 被调用时传入三个参数:元素的值,元素的索引,被遍历的数组。

    +

    callback 被调用时传入三个参数:元素的值,元素的索引,被遍历的数组。

    如果一个thisArg参数提供给some(),它将被用作调用的 callback的 this 值。否则, 它的 this value将是 undefinedthis的值最终通过callback来观察,根据 the usual rules for determining the this seen by a function的this判定规则来确定。

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/tostring/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/tostring/index.html index 9d49798a94..2378e078f8 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/tostring/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/tostring/index.html @@ -30,7 +30,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/toString

    ECMAScript 5 semantics

    -

    从 JavaScript 1.8.5 (Firefox 4) 开始,和 ECMAScript 第5版语义(semantics)一致,toString() 方法是通用的,可被用于任何对象。将调用{{jsxref("Object.prototype.toString()")}},并返回结果值。

    +

    从 JavaScript 1.8.5 (Firefox 4) 开始,和 ECMAScript 第5版语义(semantics)一致,toString() 方法是通用的,可被用于任何对象。将调用{{jsxref("Object.prototype.toString()")}},并返回结果值。

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/unshift/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/unshift/index.html index bac11d8233..b05c74e64f 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/array/unshift/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/array/unshift/index.html @@ -40,7 +40,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Array/unshift

    unshift 方法会在调用它的类数组对象的开始位置插入给定的参数。

    -

    unshift 特意被设计成具有通用性;这个方法能够通过 {{jsxref("Function.call", "call")}} 或 {{jsxref("Function.apply", "apply")}} 方法作用于类数组对象上。不过对于没有 length 属性(代表从0开始的一系列连续的数字属性的最后一个)的对象,调用该方法可能没有任何意义。

    +

    unshift 特意被设计成具有通用性;这个方法能够通过 {{jsxref("Function.call", "call")}} 或 {{jsxref("Function.apply", "apply")}} 方法作用于类数组对象上。不过对于没有 length 属性(代表从0开始的一系列连续的数字属性的最后一个)的对象,调用该方法可能没有任何意义。

    注意, 如果传入多个参数,它们会被以块的形式插入到对象的开始位置,它们的顺序和被作为参数传入时的顺序一致。 于是,传入多个参数调用一次 unshift ,和传入一个参数调用多次 unshift (例如,循环调用),它们将得到不同的结果。例如:

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/arraybuffer/index.html b/files/zh-cn/web/javascript/reference/global_objects/arraybuffer/index.html index a136334b41..a7d35e161b 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/arraybuffer/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/arraybuffer/index.html @@ -40,7 +40,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/ArrayBuffer

    异常

    -

    如果 length 大于 {{jsxref("Number.MAX_SAFE_INTEGER")}}(>= 2 ** 53)或为负数,则抛出一个  {{jsxref("RangeError")}}  异常。

    +

    如果 length 大于 {{jsxref("Number.MAX_SAFE_INTEGER")}}(>= 2 ** 53)或为负数,则抛出一个  {{jsxref("RangeError")}}  异常。

    描述

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/atomics/index.html b/files/zh-cn/web/javascript/reference/global_objects/atomics/index.html index adc026a104..838b6d8b99 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/atomics/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/atomics/index.html @@ -24,7 +24,6 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Atomics

    方法

    -
    {{jsxref("Atomics.add()")}}
    将指定位置上的数组元素与给定的值相加,并返回相加前该元素的值。
    {{jsxref("Atomics.and()")}}
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/atomics/load/index.html b/files/zh-cn/web/javascript/reference/global_objects/atomics/load/index.html index c3d37d1dcb..6e6ca0c1e9 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/atomics/load/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/atomics/load/index.html @@ -22,7 +22,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Atomics/load
    typedArray
    一个共享的整型数组。可以是 {{jsxref("Int8Array")}},{{jsxref("Uint8Array")}},{{jsxref("Int16Array")}},{{jsxref("Uint16Array")}},{{jsxref("Int32Array")}} 或 {{jsxref("Uint32Array")}}.
    index
    -
    在 typedArray 中需要加载的位置
    +
    在 typedArray 中需要加载的位置

    返回值

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/bigint64array/index.html b/files/zh-cn/web/javascript/reference/global_objects/bigint64array/index.html index 31ac75a13e..69b980e18b 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/bigint64array/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/bigint64array/index.html @@ -39,13 +39,8 @@ translation_of: Web/JavaScript/Reference/Global_Objects/BigInt64Array
    {{jsxref("TypedArray.prototype.byteOffset", "BigInt64Array.prototype.byteOffset")}}
    返回 BigInt64Array 从{jsxref(“ArrayBuffer”)}}开始的偏移量(以字节为单位)。这在构造时已被固定的,因此是只读。
    {{jsxref("TypedArray.prototype.length", "BigInt64Array.prototype.length")}}
    -
    -

    返回 BigInt64Array 中被保留的元素个数。这在构造时是固定的,因此是只读

    - -

    - - -

    +
                     +

    返回 BigInt64Array 中被 保留的元 素个数。这  在构造时是固定的,因此是只读 。  

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/boolean/tosource/index.html b/files/zh-cn/web/javascript/reference/global_objects/boolean/tosource/index.html index 2086ce07c6..a9f2272d3f 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/boolean/tosource/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/boolean/tosource/index.html @@ -10,7 +10,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Boolean/toSource ---
    {{JSRef}} {{non-standard_header}}
    -

    toSource()方法返回一个表示对象的源码的字符串。

    +

    toSource()方法返回一个表示对象的源码的字符串。

    语法

    @@ -19,28 +19,28 @@ Boolean.toSource()

    返回值

    -

    表示对象的源码的字符串。

    +

    表示对象的源码的字符串。

    描述

    -

    toSource方法返回以下值:

    +

    toSource方法返回以下值:

      -
    • 对于内置的 {{jsxref("Boolean")}} 对象,toSource返回以下字符串,表示源代码不可用: +
    • 对于内置的 {{jsxref("Boolean")}} 对象,toSource返回以下字符串,表示源代码不可用:
      function Boolean() {
           [native code]
       }
       
    • -
    • 对于 {{jsxref("Boolean")}} 的实例,toSource返回一个表示源代码的字符串。
    • +
    • 对于 {{jsxref("Boolean")}} 的实例,toSource返回一个表示源代码的字符串。
    -

    此方法通常由JavaScript在内部调用,而不是在代码中显式调用。

    +

    此方法通常由JavaScript在内部调用,而不是在代码中显式调用。

    -

    规范

    +

    规范

    -

    不是任何标准的一部分。 在JavaScript 1.3中实现。

    +

    不是任何标准的一部分。 在JavaScript 1.3中实现。

    浏览器兼容性

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/dataview/setbigint64/index.html b/files/zh-cn/web/javascript/reference/global_objects/dataview/setbigint64/index.html index 5e9b6596d4..e97765e4be 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/dataview/setbigint64/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/dataview/setbigint64/index.html @@ -26,7 +26,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/DataView/setBigInt64
    字节偏移量,为从视图的起始位置到数据存储位置的字节字节偏移量。
    value
    -
    作为一个{{jsxref("BigInt")}}类型设置的数值。满足一个带符号的64位整数的最大可能数值是 2n ** (64n -1n) - 1n (9223372036854775807n)。当发生溢出时,将会变成负数(-9223372036854775808n)。
    +
    作为一个{{jsxref("BigInt")}}类型设置的数值。满足一个带符号的64位整数的最大可能数值是 2n ** (64n -1n) - 1n (9223372036854775807n)。当发生溢出时,将会变成负数(-9223372036854775808n)。
    littleEndian
    {{optional_inline}} 为可选参数,表示这个64位整数是否以{{Glossary("Endianness", "little-endian 或者big-endian")}}格式存储。如果设置为false 或者未指定(undefined),将会写入一个big-endian(大端模式:高位字节排放在内存的低地址端,低位字节排放在内存的高地址端)格式的数值。
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/dataview/setbiguint64/index.html b/files/zh-cn/web/javascript/reference/global_objects/dataview/setbiguint64/index.html index bd2bfef8f4..264f83b51f 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/dataview/setbiguint64/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/dataview/setbiguint64/index.html @@ -25,7 +25,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/DataView/setBigUint64
    byteOffset
    字节偏移量,为从视图的起始位置到数据存储位置的字节字节偏移量。
    value
    -
    作为一个BigInt类型设置的数值。满足一个无符号的64位整数的最大可能数值是 2n ** 64n - 1n (18446744073709551615n)。当发生溢出时,将会变成0。
    +
    作为一个BigInt类型设置的数值。满足一个无符号的64位整数的最大可能数值是 2n ** 64n - 1n (18446744073709551615n)。当发生溢出时,将会变成0。
    littleEndian
    为可选参数,表示这个64位整数是否以little-endian 或者big-endian格式存储。如果设置为false 或者未指定(undefined),将会写入一个big-endian(大端模式:高位字节排放在内存的低地址端,低位字节排放在内存的高地址端)格式的数值。
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/date/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/date/index.html index 2b1e77c4b3..f97d377482 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/date/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/date/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/Date ---
    {{JSRef}}
    -

    Creates a JavaScript Date instance that represents a single moment in time in a platform-independent format. Date objects contain a Number that represents milliseconds since 1 January 1970 UTC.

    +

    Creates a JavaScript Date instance that represents a single moment in time in a platform-independent format. Date objects contain a Number that represents milliseconds since 1 January 1970 UTC.

    {{EmbedInteractiveExample("pages/js/date-constructor.html")}}
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/getdate/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/getdate/index.html index 17608a744f..4bbfc8ad23 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/getdate/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/getdate/index.html @@ -27,12 +27,12 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/getDate

    例子: 使用getDate()方法

    -

    下面第二条语句将值25赋给 day 变量,该值基于日期对象 Xmax95的值。

    +

    下面第二条语句将值25赋给 day 变量,该值基于日期对象 Xmax95的值。

    -
    var Xmas95 = new Date("December 25, 1995 23:15:00");
    -var day = Xmas95.getDate();
    +
    var Xmas95 = new Date("December 25, 1995 23:15:00");
    +var day = Xmas95.getDate();
     
    -alert(day); // 25
    +alert(day); // 25

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/getday/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/getday/index.html index 86badcff49..e9b18b852e 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/getday/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/getday/index.html @@ -26,10 +26,10 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/getDay

    下面第二条语句,基于{{jsxref("Date")}}对象 Xmas95 的值,把 1 赋值给 weekday。也就是说1995年12月25日是星期一。

    -
    var Xmas95 = new Date("December 25, 1995 23:15:30");
    -var weekday = Xmas95.getDay();
    +
    var Xmas95 = new Date("December 25, 1995 23:15:30");
    +var weekday = Xmas95.getDay();
     
    -console.log(weekday); // 1
    +console.log(weekday); // 1

    注意:如果需要,可以使用{{jsxref("DateTimeFormat", "Intl.DateTimeFormat")}}与一个额外的options 参数,从而返回这天的全称(如"Monday").使用此方法,结果会更加国际化:

    @@ -51,7 +51,7 @@ console.log(new Intl.DateTimeFormat('de-DE', options).format(Xmas95));
    - + diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/gethours/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/gethours/index.html index c15bc0f6cf..eb8ad854e1 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/gethours/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/gethours/index.html @@ -29,10 +29,10 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/getHours

    下面第二条语句,基于日期对象 Xmas95 的值,把 23 赋值给了变量 hours。

    -
    var Xmas95 = new Date("December 25, 1995 23:15:00");
    -var hours = Xmas95.getHours();
    +
    var Xmas95 = new Date("December 25, 1995 23:15:00");
    +var hours = Xmas95.getHours();
     
    -alert(hours); // 23
    +alert(hours); // 23

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/getmilliseconds/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/getmilliseconds/index.html index db20141cc4..15d556779d 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/getmilliseconds/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/getmilliseconds/index.html @@ -29,9 +29,9 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/getMilliseconds

    下例中,将当前时间的毫秒数赋值给变量 ms

    -
    var ms;
    -Today = new Date();
    -ms = Today.getMilliseconds();
    +
    var ms;
    +Today = new Date();
    +ms = Today.getMilliseconds();

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/getminutes/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/getminutes/index.html index 5bcbcfc724..7a1fd0f433 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/getminutes/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/getminutes/index.html @@ -27,8 +27,8 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/getMinutes

    下例中,第二行语句运行过后,变量 minutes 的值为15,也就是说 Xmas95 这个日期对象的值为某时15分某秒。

    -
    var Xmas95 = new Date("December 25, 1995 23:15:00");
    -var minutes = Xmas95.getMinutes();
    +
    var Xmas95 = new Date("December 25, 1995 23:15:00");
    +var minutes = Xmas95.getMinutes();

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/getseconds/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/getseconds/index.html index 83a899886e..457f166047 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/getseconds/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/getseconds/index.html @@ -29,8 +29,8 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/getSeconds

    下面第二条语句,基于日期对象 Xmas95 的值,把 30 赋值给变量 secs

    -
    var Xmas95 = new Date("December 25, 1995 23:15:30");
    -var secs = Xmas95.getSeconds();
    +
    var Xmas95 = new Date("December 25, 1995 23:15:30");
    +var secs = Xmas95.getSeconds();
     
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/now/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/now/index.html index b7153612a2..fd0c8dd482 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/now/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/now/index.html @@ -30,9 +30,9 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/now

    因为 now() 是 {{jsxref("Date")}} 的一个静态函数,所以必须以 Date.now() 的形式来使用。

    -

    时间精度被降低

    +

    时间精度被降低

    -

    为了提供针对定时攻击和指纹追踪的保护,Date.now() 的精度可能会根据浏览器的高级设置项目而被取整。
    +

    为了提供针对定时攻击和指纹追踪的保护,Date.now() 的精度可能会根据浏览器的高级设置项目而被取整。
    在 Firefox 中,默认启用 privacy.reduceTimerPrecision 设置项,在 Firefox 59 中,默认被取整至 20 微秒;在 Firefox 60 中,则被取整至 2 毫秒。

    // reduced time precision (2ms) in Firefox 60
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/parse/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/parse/index.html
    index 701f6fc103..9646b069da 100644
    --- a/files/zh-cn/web/javascript/reference/global_objects/date/parse/index.html
    +++ b/files/zh-cn/web/javascript/reference/global_objects/date/parse/index.html
    @@ -52,7 +52,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/parse
     
     

    由于在解析日期字符串时存在偏差会导致结果不一致,因此推荐始终手动解析日期字符串,特别是不同的ECMAScript实现会把诸如“2015-10-12 12:00:00”的字符串解析为NaN,UTC或者本地时间。

    -

    ECMAScript 5 ISO-8601 日期格式支持

    +

    ECMAScript 5 ISO-8601 日期格式支持

    另外,日期时间字符串也可以使用 ISO 8601 格式。例如,"2011-10-10" (仅日期)或 "2011-10-10T14:48:00" (日期和时间)能够作为参数被传递和解析。 如果参数字符串只包含日期格式,那么将会使用UTC时区来解析该参数。而如果是ISO 8601 格式中规定的时间加日期的格式,则将会被作为本地时区处理。

    @@ -70,26 +70,26 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/parse

    但是, 在如 ECMA-262 规范中定义的情况,如果因为无效值而导致日期字符串不能被识别为 ISO 格式时,根据浏览器和给定的值不同,返回值可以是,也可以不是 {{jsxref("NaN")}} 。比如:

    -
    // 包含无效值的非 ISO 格式字符串
    -new Date('23/25/2014');
    +
    // 包含无效值的非 ISO 格式字符串
    +new Date('23/25/2014');

    在 Firefox 30 中会被识别为本地时区的2015年12月25日,而在 Safari 7 中则是无效日期。但是,如果字符串被识别为 ISO 格式并且包含无效值,则在所有遵循 ES5 或者更新标准的浏览器中都会返回 {{jsxref("NaN")}} 。

    -
    // 包含无效值的 ISO 格式字符串
    -new Date('2014-25-23').toISOString();
    -// 在所有遵循 ES5的浏览器中返回 "RangeError: invalid date"
    +
    // 包含无效值的 ISO 格式字符串
    +new Date('2014-25-23').toISOString();
    +// 在所有遵循 ES5的浏览器中返回 "RangeError: invalid date"

    SpiderMonkey 的引擎策略可以在 jsdate.cpp  中找到。字符串 "10 06 2014"  可以作为非 ISO 格式字符串使用自定义处理方式的例子。参见这篇关于解析如何进行的粗略纲要

    -
    new Date('10 06 2014');
    +
    new Date('10 06 2014');

    将会被解析为本地时间 2014年10月6日,而不是6月10日。另一个例子

    -
    new Date('foo-bar 2014').toString();
    -// 返回: "Invalid Date"
    +
    new Date('foo-bar 2014').toString();
    +// 返回: "Invalid Date"
     
    -Date.parse('foo-bar 2014');
    -// 返回: NaN
    +Date.parse('foo-bar 2014'); +// 返回: NaN

    例子

    @@ -97,7 +97,7 @@ Date.parse如果 IPOdate 是一个已经存在的 {{jsxref("Date")}} 对象,则可以把其设置为本地时间 1995年8月9日。如下:

    -
    IPOdate.setTime(Date.parse('Aug 9, 1995'));
    +
    IPOdate.setTime(Date.parse('Aug 9, 1995'));

    其他一些解析非标准格式日期的例子:

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/setfullyear/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/setfullyear/index.html index 72a0583a2d..ad8ffc0c33 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/setfullyear/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/setfullyear/index.html @@ -36,8 +36,8 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/setFullYear

    例子:使用setFullYear方法

    -
    var theBigDay = new Date();
    -theBigDay.setFullYear(1997);
    +
    var theBigDay = new Date();
    +theBigDay.setFullYear(1997);

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/sethours/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/sethours/index.html index 5b0315f92d..43786dadd9 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/sethours/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/sethours/index.html @@ -13,7 +13,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/setHours

    语法

    -
    dateObj.setHours(hoursValue[, minutesValue[, secondsValue[, msValue]]])
    +
    dateObj.setHours(hoursValue[, minutesValue[, secondsValue[, msValue]]])
     

    JavaScript 1.3版本之前

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/setutcfullyear/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/setutcfullyear/index.html index 9d448b59df..fd83af1c4e 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/setutcfullyear/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/setutcfullyear/index.html @@ -84,7 +84,7 @@ theBigDay.setUTCFullYear(1997);

    {{Compat("javascript.builtins.Date.setUTCFullYear")}}

    -

    相关连接

    +

    相关连接

    • {{jsxref("Date.prototype.getUTCFullYear()")}}
    • diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/tolocaledatestring/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/tolocaledatestring/index.html index 3089a5fb63..407050f518 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/tolocaledatestring/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/tolocaledatestring/index.html @@ -73,7 +73,7 @@ alert(date.toLocaleDateString("ko-KR")); // Arabic in most Arabic speaking countries uses real Arabic digits alert(date.toLocaleDateString("ar-EG")); -// → "٢٠‏/١٢‏/٢٠١٢" +// → "٢٠‏/١٢‏/٢٠١٢" // for Japanese, applications may want to use the Japanese calendar, // where 2012 was the year 24 of the Heisei era diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/tolocalestring/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/tolocalestring/index.html index be2e721ee2..3c9ecb2a58 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/tolocalestring/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/tolocalestring/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/toLocaleString ---
      {{JSRef("Global_Objects", "Date")}}
      -

      toLocaleString() 方法返回该日期对象的字符串,该字符串格式因不同语言而不同。新增的参数 locales 和 options 使程序能够指定使用哪种语言格式化规则,允许定制该方法的表现(behavior)。在旧版本浏览器中, locales 和 options 参数被忽略,使用的语言环境和返回的字符串格式是各自独立实现的。

      +

      toLocaleString() 方法返回该日期对象的字符串,该字符串格式因不同语言而不同。新增的参数 locales 和 options 使程序能够指定使用哪种语言格式化规则,允许定制该方法的表现(behavior)。在旧版本浏览器中, locales 和 options 参数被忽略,使用的语言环境和返回的字符串格式是各自独立实现的。

      {{EmbedInteractiveExample("pages/js/date-tolocalestring.html")}}
      @@ -75,7 +75,7 @@ alert(date.toLocaleString("ko-KR")); // 大多数阿拉伯语国家的阿拉伯语使用阿拉伯数字 alert(date.toLocaleString("ar-EG")); -// → "٢٠‏/١٢‏/٢٠١٢ ٥:٠٠:٠٠ ص" +// → "٢٠‏/١٢‏/٢٠١٢ ٥:٠٠:٠٠ ص" //在日本,应用可能想要使用日本日历, //2012 是平成24年(平成是是日本天皇明仁的年号,由1989年1月8日起开始计算直至现在) diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/tolocaletimestring/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/tolocaletimestring/index.html index c19d137c7a..2f31d53e2d 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/date/tolocaletimestring/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/date/tolocaletimestring/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Date/toLocaleTimeString ---
      {{JSRef("Global_Objects", "Date")}}
      -

      The toLocaleTimeString() 方法返回该日期对象时间部分的字符串,该字符串格式因不同语言而不同。新增的参数 locales 和 options 使程序能够指定使用哪种语言格式化规则,允许定制该方法的表现(behavior)。在旧版本浏览器中, locales 和 options 参数被忽略,使用的语言环境和返回的字符串格式是各自独立实现的。

      +

      The toLocaleTimeString() 方法返回该日期对象时间部分的字符串,该字符串格式因不同语言而不同。新增的参数 locales 和 options 使程序能够指定使用哪种语言格式化规则,允许定制该方法的表现(behavior)。在旧版本浏览器中, locales 和 options 参数被忽略,使用的语言环境和返回的字符串格式是各自独立实现的。

      {{EmbedInteractiveExample("pages/js/date-tolocaletimestring.html")}}
      @@ -73,7 +73,7 @@ alert(date.toLocaleTimeString("ko-KR")); // Arabic in most Arabic speaking countries uses real Arabic digits alert(date.toLocaleTimeString("ar-EG")); -// → "٧:٠٠:٠٠ م" +// → "٧:٠٠:٠٠ م" // when requesting a language that may not be supported, such as // Balinese, include a fallback language, in this case Indonesian diff --git a/files/zh-cn/web/javascript/reference/global_objects/decodeuri/index.html b/files/zh-cn/web/javascript/reference/global_objects/decodeuri/index.html index ca777f1f3c..d988fc7557 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/decodeuri/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/decodeuri/index.html @@ -97,8 +97,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/decodeURI

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

      -


      - 相关链接

      +

      相关链接

      diff --git a/files/zh-cn/web/javascript/reference/global_objects/decodeuricomponent/index.html b/files/zh-cn/web/javascript/reference/global_objects/decodeuricomponent/index.html index a45b313f7c..8593a8a074 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/decodeuricomponent/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/decodeuricomponent/index.html @@ -25,11 +25,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/decodeURIComponent

      返回值

      -

      一个解码后的统一资源标识符(URI)字符串,处理前的URI经过了给定格式的编码。

      +

      一个解码后的统一资源标识符(URI)字符串,处理前的URI经过了给定格式的编码。

      异常

      -

      当该方法使用不当时,将会抛出一个{{jsxref("URIError")}}(格式错误的URI序列)异常。

      +

      当该方法使用不当时,将会抛出一个{{jsxref("URIError")}}(“格式错误的URI序列”)异常。

      描述

      diff --git a/files/zh-cn/web/javascript/reference/global_objects/error/index.html b/files/zh-cn/web/javascript/reference/global_objects/error/index.html index c8aa8b581e..b9334c7969 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/error/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/error/index.html @@ -9,7 +9,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Error ---

      {{JSRef}}

      -

      通过Error的构造器可以创建一个错误对象。当运行时错误产生时,Error的实例对象会被抛出。Error对象可用于用户自定义的异常的基础对象。下面列出了各种内建的标准错误类型。

      +

      通过Error的构造器可以创建一个错误对象。当运行时错误产生时,Error的实例对象会被抛出。Error对象也可用于用户自定义的异常的基础对象。下面列出了各种内建的标准错误类型。

      语法

      @@ -24,19 +24,19 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Error
      fileName {{non-standard_inline}}
      -
      可选。被创建的Error对象的fileName属性值。默认是调用Error构造器代码所在的文件 的名字。
      +
      可选。被创建的Error对象的fileName属性值。默认是调用Error构造器代码所在的文件 的名字。
      lineNumber {{non-standard_inline}}
      -
      可选。被创建的Error对象的lineNumber属性值。默认是调用Error构造器代码所在的文件的行号
      +
      可选。被创建的Error对象的lineNumber属性值。默认是调用Error构造器代码所在的文件的行号。

      描述

      当代码运行时的发生错误,会创建新的Error 对象,并将其抛出。

      -

      该页面描述了Error对象自身的使用,以及其构造函数的使用. 关于Error实例的内部属性和方法,请看 {{jsxref("Error.prototype")}}。

      +

      该页面描述了Error对象自身的使用,以及其构造函数的使用. 关于Error实例的内部属性和方法,请看 {{jsxref("Error.prototype")}}。

      作为函数使用

      @@ -49,7 +49,7 @@ const y = new Error('I was constructed via the "new" keyword!');

    Error 类型

    -

    除了通用的Error构造函数外,JavaScript还有6个其他类型的错误构造函数。更多客户端异常,详见 Exception Handling Statements

    +

    除了通用的Error构造函数外,JavaScript还有6个其他类型的错误构造函数。更多客户端异常,详见 Exception Handling Statements

    {{jsxref("EvalError")}}
    @@ -60,7 +60,7 @@ const y = new Error('I was constructed via the "new" keyword!');
    {{jsxref("RangeError", "RangeError")}}
    -
    创建一个error实例,表示错误的原因:数值变量或参数超出其有效范围
    +
    创建一个error实例,表示错误的原因:数值变量或参数超出其有效范围。
    @@ -70,7 +70,7 @@ const y = new Error('I was constructed via the "new" keyword!');
    {{jsxref("SyntaxError")}}
    -
    创建一个error实例,表示错误的原因:{{jsxref("Global_Objects/eval", "eval()")}}在解析代码的过程中发生的语法错误
    +
    创建一个error实例,表示错误的原因:{{jsxref("Global_Objects/eval", "eval()")}}在解析代码的过程中发生的语法错误。
    @@ -80,7 +80,7 @@ const y = new Error('I was constructed via the "new" keyword!');
    {{jsxref("URIError")}}
    -
    创建一个error实例,表示错误的原因:给 {{jsxref("Global_Objects/encodeURI", "encodeURI()")}}或  {{jsxref("Global_Objects/decodeURI", "decodeURI()")}}传递的参数无效。
    +
    创建一个error实例,表示错误的原因:给 {{jsxref("Global_Objects/encodeURI", "encodeURI()")}}或  {{jsxref("Global_Objects/decodeURI", "decodeURI()")}}传递的参数无效。

    属性

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/error/name/index.html b/files/zh-cn/web/javascript/reference/global_objects/error/name/index.html index 85eba29c8a..13232d69d9 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/error/name/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/error/name/index.html @@ -7,11 +7,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Error/name

    概述

    -

    name 属性表示error类型的名称.初始值为"Error".

    +

    name 属性表示error类型的名称.初始值为"Error".

    描述

    -

    默认情况下,{{jsxref("Error")}}对象的name属性值为"Error".name属性和{{jsxref("Error.prototype.message", "message")}}属性一起,通过调用{{jsxref("Error.prototype.toString()")}}方法,会作为最后异常信息的字符串表示.

    +

    默认情况下,{{jsxref("Error")}}对象的name属性值为"Error".name属性和{{jsxref("Error.prototype.message", "message")}}属性一起,通过调用{{jsxref("Error.prototype.toString()")}}方法,会作为最后异常信息的字符串表示.

    示例

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/function/apply/index.html b/files/zh-cn/web/javascript/reference/global_objects/function/apply/index.html index 0bf0414cf8..d345215619 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/function/apply/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/function/apply/index.html @@ -11,7 +11,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Function/apply

    apply() 方法调用一个具有给定this值的函数,以及以一个数组(或类数组对象)的形式提供的参数。

    -
    注意:call()方法的作用和 apply() 方法类似,区别就是call()方法接受的是参数列表,而apply()方法接受的是一个参数数组
    +
    注意:call()方法的作用和 apply() 方法类似,区别就是call()方法接受的是参数列表,而apply()方法接受的是一个参数数组
    {{EmbedInteractiveExample("pages/js/function-apply.html")}}
    @@ -36,9 +36,9 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Function/apply

    描述

    -

    在调用一个存在的函数时,你可以为其指定一个 this 对象。 this 指当前对象,也就是正在调用这个函数的对象。 使用 apply, 你可以只写一次这个方法然后在另一个对象中继承它,而不用在新对象中重复写该方法。

    +

    在调用一个存在的函数时,你可以为其指定一个 this 对象。 this 指当前对象,也就是正在调用这个函数的对象。 使用 apply, 你可以只写一次这个方法然后在另一个对象中继承它,而不用在新对象中重复写该方法。

    -

    apply 与 {{jsxref("Function.call", "call()")}} 非常相似,不同之处在于提供参数的方式。apply 使用参数数组而不是一组参数列表。apply 可以使用数组字面量(array literal),如 fun.apply(this, ['eat', 'bananas']),或数组对象, 如  fun.apply(this, new Array('eat', 'bananas'))

    +

    apply 与 {{jsxref("Function.call", "call()")}} 非常相似,不同之处在于提供参数的方式。apply 使用参数数组而不是一组参数列表。apply 可以使用数组字面量(array literal),如 fun.apply(this, ['eat', 'bananas']),或数组对象, 如  fun.apply(this, new Array('eat', 'bananas'))

    你也可以使用 {{jsxref("Functions/arguments", "arguments")}}对象作为 argsArray 参数。 arguments 是一个函数的局部变量。 它可以被用作被调用对象的所有未指定的参数。 这样,你在使用apply函数的时候就不需要知道被调用对象的所有参数。 你可以使用arguments来把所有的参数传递给被调用对象。 被调用对象接下来就负责处理这些参数。

    @@ -108,7 +108,7 @@ var min = minOfArray([5, 6, 2, 3, 7]);

    使用apply来链接构造器

    -

    你可以使用apply来链接一个对象构造器,类似于Java。在接下来的例子中我们会创建一个全局Function 对象的construct方法 ,来使你能够在构造器中使用一个类数组对象而非参数列表。

    +

    你可以使用apply来链接一个对象构造器,类似于Java。在接下来的例子中我们会创建一个全局Function 对象的construct方法 ,来使你能够在构造器中使用一个类数组对象而非参数列表。

    Function.prototype.construct = function (aArgs) {
       var oNew = Object.create(this.prototype);
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/function/caller/index.html b/files/zh-cn/web/javascript/reference/global_objects/function/caller/index.html
    index a850d41582..ba3ce01a26 100644
    --- a/files/zh-cn/web/javascript/reference/global_objects/function/caller/index.html
    +++ b/files/zh-cn/web/javascript/reference/global_objects/function/caller/index.html
    @@ -58,7 +58,7 @@ while (f) {
     
     
    function myFunc() {
        if (myFunc.caller == null) {
    -      return ("该函数在全局作用域内被调用!");
    +      return ("该函数在全局作用域内被调用!");
        } else
           return ("调用我的是函数是" + myFunc.caller);
     }
    @@ -66,4 +66,4 @@ while (f) {
     
     

    浏览器兼容性

    -

    Function.caller目前被所有主流浏览器支持: Firefox, Safari, Chrome, Opera 和 IE. 查看检测结果.

    +

    Function.caller目前被所有主流浏览器支持: Firefox, Safari, Chrome, Opera 和 IE. 查看检测结果.

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/generator/index.html b/files/zh-cn/web/javascript/reference/global_objects/generator/index.html index 612024ca88..f7e4fc037b 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/generator/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/generator/index.html @@ -65,13 +65,13 @@ console.log(gen.next().value);
    Generator.prototype.next() {{non-standard_inline}}
    -
    返回 {{jsxref("Operators/yield", "yield")}} 表达式产生的值. 与ES2015 生成器对象的next()方法对应.
    +
    返回 {{jsxref("Operators/yield", "yield")}} 表达式产生的值. 与ES2015 生成器对象的next()方法对应.
    Generator.prototype.close() {{non-standard_inline}}
    -
    关闭生成器,因此执行该函数后调用next()函数时将会抛出 {{jsxref("StopIteration")}} 错误. 与ES2015 生成器对象的return()方法对应..
    +
    关闭生成器,因此执行该函数后调用next()函数时将会抛出 {{jsxref("StopIteration")}} 错误. 与ES2015 生成器对象的return()方法对应..
    Generator.prototype.send() {{non-standard_inline}}
    用于将值发送到生成器。 该值由 {{jsxref("Operators/yield", "yield")}} 表达式返回, 并且返回下一个 {{jsxref("Operators/yield", "yield")}} 表达式产生的值. send(x) 对应于ES2015生成器对象中的 next(x)
    Generator.prototype.throw() {{non-standard_inline}}
    -
    向生成器抛出错误. 与ES2015 生成器对象的throw()方法对应.
    +
    向生成器抛出错误. 与ES2015 生成器对象的throw()方法对应.

    旧生成器对象示例

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/generator/throw/index.html b/files/zh-cn/web/javascript/reference/global_objects/generator/throw/index.html index 13138d5484..fec5b2f93c 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/generator/throw/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/generator/throw/index.html @@ -44,7 +44,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Generator/throw

    使用 throw()

    -

    下面的例子展示了一个简单的生成器并使用 throw方法向该生成器抛出一个异常,该异常通常可以通过 try...catch 块进行捕获.

    +

    下面的例子展示了一个简单的生成器并使用 throw方法向该生成器抛出一个异常,该异常通常可以通过 try...catch 块进行捕获.

    function* gen() {
       while(true) {
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/globalthis/index.html b/files/zh-cn/web/javascript/reference/global_objects/globalthis/index.html
    index e9c96e8656..e3c5d1b0a2 100644
    --- a/files/zh-cn/web/javascript/reference/global_objects/globalthis/index.html
    +++ b/files/zh-cn/web/javascript/reference/global_objects/globalthis/index.html
    @@ -14,7 +14,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/globalThis
     ---
     
    {{jsSidebar("Objects")}}
    -

    全局属性 globalThis 包含全局的 this 值,类似于全局对象(global object)。

    +

    全局属性 globalThis 包含全局的 this 值,类似于全局对象(global object)。

    {{EmbedInteractiveExample("pages/js/globalprops-globalthis.html","shorter")}}
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/index.html b/files/zh-cn/web/javascript/reference/global_objects/index.html index 293b4935b6..1ac71c0b32 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/index.html @@ -171,7 +171,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects

    国际化

    -

    ECMAScript核心的附加功能,用于支持多语言处理

    +

    ECMAScript核心的附加功能,用于支持多语言处理。

      diff --git a/files/zh-cn/web/javascript/reference/global_objects/infinity/index.html b/files/zh-cn/web/javascript/reference/global_objects/infinity/index.html index 7d8e6cb3c4..3181d4b7ff 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/infinity/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/infinity/index.html @@ -25,11 +25,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Infinity

      示例

      -
      console.log(Infinity          ); /* Infinity */
      -console.log(Infinity + 1      ); /* Infinity */
      -console.log(Math.pow(10, 1000)); /* Infinity */
      -console.log(Math.log(0)       ); /* -Infinity */
      -console.log(1 / Infinity      ); /* 0 */
      +
      console.log(Infinity          ); /* Infinity */
      +console.log(Infinity + 1      ); /* Infinity */
      +console.log(Math.pow(10, 1000)); /* Infinity */
      +console.log(Math.log(0)       ); /* -Infinity */
      +console.log(1 / Infinity      ); /* 0 */

      规范

      diff --git a/files/zh-cn/web/javascript/reference/global_objects/int32array/index.html b/files/zh-cn/web/javascript/reference/global_objects/int32array/index.html index 1e7ca21cc4..a1b8db6fc9 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/int32array/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/int32array/index.html @@ -195,7 +195,7 @@ var z = new Int32Array(buffer, 0, 4);
    - + diff --git a/files/zh-cn/web/javascript/reference/global_objects/internalerror/index.html b/files/zh-cn/web/javascript/reference/global_objects/internalerror/index.html index e0f98013f9..57f84f7db4 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/internalerror/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/internalerror/index.html @@ -65,7 +65,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/InternalError

    浏览器兼容性

    -

    {{CompatibilityTable}}

    +

    {{CompatibilityTable}}

    ESNext Promise.any ProposalStage 3 DraftStage 3 Draft Initial definition.
    注解
    {{SpecName('ESDraft', '#sec-date.prototype.getday', 'Date.prototype.getDay')}}{{SpecName('ESDraft', '#sec-date.prototype.getday', 'Date.prototype.getDay')}}   {{Spec2('ESDraft')}}  
    5.1
    的特性 的特性 {{CompatUnknown}} {{ CompatGeckoDesktop(44) }} {{CompatUnknown}}
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/intl/datetimeformat/index.html b/files/zh-cn/web/javascript/reference/global_objects/intl/datetimeformat/index.html index ef43816d44..eb886cb8b8 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/intl/datetimeformat/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/intl/datetimeformat/index.html @@ -154,7 +154,7 @@ console.log(new Intl.DateTimeFormat('ko-KR').format(date)); //大部分阿拉伯国家使用阿拉伯字母(real Arabic digits) console.log(new Intl.DateTimeFormat('ar-EG').format(date)); -// → "٢٠‏/١٢‏/٢٠١٢" +// → "٢٠‏/١٢‏/٢٠١٢" //在日本,应用可能想要使用日本日历, //2012 是平成24年(平成是是日本天皇明仁的年号,由1989年1月8日起开始计算直至现在) diff --git a/files/zh-cn/web/javascript/reference/global_objects/isfinite/index.html b/files/zh-cn/web/javascript/reference/global_objects/isfinite/index.html index b8f1c4d53c..296dcf5bc0 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/isfinite/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/isfinite/index.html @@ -33,15 +33,15 @@ translation_of: Web/JavaScript/Reference/Global_Objects/isFinite

    示例

    -
    isFinite(Infinity);  // false
    -isFinite(NaN);       // false
    -isFinite(-Infinity); // false
    -
    -isFinite(0);         // true
    -isFinite(2e64);      // true, 在更强壮的Number.isFinite(null)中将会得到false
    -
    -
    -isFinite("0");       // true, 在更强壮的Number.isFinite('0')中将会得到false
    +
    isFinite(Infinity);  // false
    +isFinite(NaN);       // false
    +isFinite(-Infinity); // false
    +
    +isFinite(0);         // true
    +isFinite(2e64);      // true, 在更强壮的Number.isFinite(null)中将会得到false
    +
    +
    +isFinite("0");       // true, 在更强壮的Number.isFinite('0')中将会得到false
     
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/isnan/index.html b/files/zh-cn/web/javascript/reference/global_objects/isnan/index.html index e9fd9ff613..772c25bc8e 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/isnan/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/isnan/index.html @@ -48,10 +48,10 @@ translation_of: Web/JavaScript/Reference/Global_Objects/isNaN

    一个isNaN的 polyfill 可以理解为(这个polyfill利用了NaN自身永不相等于自身这一特征 ):

    -
    var isNaN = function(value) {
    -    var n = Number(value);
    -    return n !== n;
    -};
    +
    var isNaN = function(value) {
    +    var n = Number(value);
    +    return n !== n;
    +};

    示例

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/json/index.html b/files/zh-cn/web/javascript/reference/global_objects/json/index.html index 81957d2e03..9eb0663504 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/json/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/json/index.html @@ -17,7 +17,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/JSON

    JavaScript Object Notation

    -

    JSON 是一种语法,用来序列化对象、数组、数值、字符串、布尔值和 {{jsxref("null")}} 。它基于 JavaScript 语法,但与之不同:JavaScript不是JSON,JSON也不是JavaScript参考 JSON:并不是JavaScript 的子集

    +

    JSON 是一种语法,用来序列化对象、数组、数值、字符串、布尔值和 {{jsxref("null")}} 。它基于 JavaScript 语法,但与之不同:JavaScript不是JSON,JSON也不是JavaScript。参考 JSON:并不是JavaScript 的子集

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/map/foreach/index.html b/files/zh-cn/web/javascript/reference/global_objects/map/foreach/index.html index 301214807e..76ef36556e 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/map/foreach/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/map/foreach/index.html @@ -14,7 +14,7 @@ browser-compat: javascript.builtins.Map.forEach ---
    {{JSRef}}
    -

    forEach() 方法按照插入顺序依次对 Map 中每个键/值对执行一次给定的函数

    +

    forEach() 方法按照插入顺序依次对 Map 中每个键/值对执行一次给定的函数

    {{EmbedInteractiveExample("pages/js/map-prototype-foreach.html")}}
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/map/index.html b/files/zh-cn/web/javascript/reference/global_objects/map/index.html index 88ab546cf7..3a4c41dcdd 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/map/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/map/index.html @@ -157,7 +157,7 @@ myMap.get(function() {}); // undefined, 因为keyFunc !== function () {}

    将 NaN 作为 Map 的键

    -

    NaN 也可以作为Map对象的键。虽然 NaN 和任何值甚至和自己都不相等(NaN !== NaN 返回true),但下面的例子表明,NaN作为Map的键来说是没有区别的:

    +

    NaN 也可以作为Map对象的键。虽然 NaN 和任何值甚至和自己都不相等(NaN !== NaN 返回true),但下面的例子表明,NaN作为Map的键来说是没有区别的:

    let myMap = new Map();
     myMap.set(NaN, "not a number");
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/abs/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/abs/index.html
    index 13f5f96b79..60747a871d 100644
    --- a/files/zh-cn/web/javascript/reference/global_objects/math/abs/index.html
    +++ b/files/zh-cn/web/javascript/reference/global_objects/math/abs/index.html
    @@ -22,7 +22,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/abs
     
     

    说明

    -

    由于 Math.abs()  Math 中的一个静态方法,你应该通过 Math.abs() 调用。(Math 不是构造器)

    +

    由于 Math.abs()  Math 中的一个静态方法,你应该通过 Math.abs() 调用。(Math 不是构造器)

    示例

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/cbrt/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/cbrt/index.html index d583caf717..96d8b00a37 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/math/cbrt/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/math/cbrt/index.html @@ -34,7 +34,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/cbrt

    而不是作为您创建的Math对象的方法(Math不是构造函数)。

    -

    cbrt 是 "cube root" 的缩写, 意思是立方根.

    +

    cbrt 是 "cube root" 的缩写, 意思是立方根.

    示例

    @@ -50,7 +50,7 @@ Math.cbrt(Infinity); // Infinity Math.cbrt(null); // 0 Math.cbrt(2); // 1.2599210498948734
    -

    Polyfill

    +

    Polyfill

    为了与旧版浏览器兼容, 可使用下方函数模拟cbrt():

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/clz32/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/clz32/index.html index ec23e5ab09..bd41c06b44 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/math/clz32/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/math/clz32/index.html @@ -31,7 +31,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/clz32

    NaN, Infinity, -Infinity 这三个数字转成 32 位无符号整形数字后都是 0.

    -

    这个函数主要用于那些编译目标为 JS 语言的系统中, 比如 Emscripten.

    +

    这个函数主要用于那些编译目标为 JS 语言的系统中, 比如 Emscripten.

    示例

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/expm1/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/expm1/index.html index 74502e9d83..f7baeb0486 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/math/expm1/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/math/expm1/index.html @@ -22,7 +22,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/expm1

    描述

    -

    参数 x 会被自动类型转换成 number 类型.

    +

    参数 x 会被自动类型转换成 number 类型.

    expm1 是 "exponent minus 1" 的缩写.

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/floor/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/floor/index.html index 91e6f0c395..530f15a033 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/math/floor/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/math/floor/index.html @@ -146,7 +146,7 @@ Math.ceil10(-59, 1); // -50 - + diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/imul/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/imul/index.html index 67da70040d..9d0e9f1c29 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/math/imul/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/math/imul/index.html @@ -45,7 +45,7 @@ Math.imul(0xfffffffe, 5) //-10

    下面的 JavaScript 代码可以实现该函数:

    -
    if (!Math.imul) Math.imul = function(a, b) {
    +
    if (!Math.imul) Math.imul = function(a, b) {
       var aHi = (a >>> 16) & 0xffff;
       var aLo = a & 0xffff;
       var bHi = (b >>> 16) & 0xffff;
    @@ -57,7 +57,7 @@ Math.imul(0xfffffffe, 5) //-10
     
     

    然而,下面的实现性能会更好一些。因为运行这段 polyfill 的浏览器很有可能会在内部使用浮点数,而不是整数表示 javascript 的 Number。

    -
    if (!Math.imul) Math.imul = function(opA, opB) {
    +
    if (!Math.imul) Math.imul = function(opA, opB) {
       opB |= 0; // ensure that opB is an integer. opA will automatically be coerced.
       // floating points give us 53 bits of precision to work with plus 1 sign bit
       // automatically handled for our convienence:
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/log10/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/log10/index.html
    index 7819f922e8..3b8aefc6ed 100644
    --- a/files/zh-cn/web/javascript/reference/global_objects/math/log10/index.html
    +++ b/files/zh-cn/web/javascript/reference/global_objects/math/log10/index.html
    @@ -9,7 +9,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/log10
     
     

    概述

    -

    Math.log10() 函数返回一个数字以 10 为底的对数.

    +

    Math.log10() 函数返回一个数字以 10 为底的对数.

    语法

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/pi/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/pi/index.html index 77f373196e..69b5ab79d1 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/math/pi/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/math/pi/index.html @@ -23,11 +23,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/PI

    下面的函数使用 Math.PI 计算给定半径的圆周长:

    -
    function calculateCircumference (radius) {
    -  return 2 * Math.PI * radius;
    -}
    +
    function calculateCircumference (radius) {
    +  return 2 * Math.PI * radius;
    +}
     
    -calculateCircumference(1);  // 6.283185307179586
    +calculateCircumference(1); // 6.283185307179586

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/pow/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/pow/index.html index 32489252c0..3ede0647ac 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/math/pow/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/math/pow/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/pow ---
    {{JSRef}}
    -

    Math.pow() 函数返回基数(base)的指数(exponent)次幂,即 baseexponent

    +

    Math.pow() 函数返回基数(base)的指数(exponent)次幂,即 baseexponent

    {{EmbedInteractiveExample("pages/js/math-pow.html")}}

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/random/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/random/index.html index efc11b6894..e25608ec05 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/math/random/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/math/random/index.html @@ -50,11 +50,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/random

    这个例子返回了一个在指定值之间的随机整数。这个值不小于 min (如果 min 不是整数,则不小于 min 的向上取整数),且小于(不等于)max

    -
    function getRandomInt(min, max) {
    -  min = Math.ceil(min);
    -  max = Math.floor(max);
    -  return Math.floor(Math.random() * (max - min)) + min; //不含最大值,含最小值
    -}
    +
    function getRandomInt(min, max) {
    +  min = Math.ceil(min);
    +  max = Math.floor(max);
    +  return Math.floor(Math.random() * (max - min)) + min; //不含最大值,含最小值
    +}

    也许很容易想到用 Math.round() 来实现,但是这会导致你的随机数处于一个不均匀的分布,这可能不符合你的需求。

    @@ -64,11 +64,11 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Math/random

    上一个例子提到的函数 getRandomInt() 结果范围包含了最小值,但不含最大值。如果你的随机结果需要同时包含最小值和最大值,怎么办呢?  getRandomIntInclusive() 函数可以实现。

    -
    function getRandomIntInclusive(min, max) {
    -  min = Math.ceil(min);
    -  max = Math.floor(max);
    -  return Math.floor(Math.random() * (max - min + 1)) + min; //含最大值,含最小值 
    -}
    +
    function getRandomIntInclusive(min, max) {
    +  min = Math.ceil(min);
    +  max = Math.floor(max);
    +  return Math.floor(Math.random() * (max - min + 1)) + min; //含最大值,含最小值 
    +}

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/math/sign/index.html b/files/zh-cn/web/javascript/reference/global_objects/math/sign/index.html index ca7678c9f0..9c41082511 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/math/sign/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/math/sign/index.html @@ -50,12 +50,12 @@ Math.sign(); // NaN

    Polyfill

    -
    function sign(x) {
    -    x = +x ;// convert to a number
    -    if (x === 0 || isNaN(x))
    -        return x;
    -    return x > 0 ? 1 : -1;
    -}
    +
    function sign(x) {
    +    x = +x ;// convert to a number
    +    if (x === 0 || isNaN(x))
    +        return x;
    +    return x > 0 ? 1 : -1;
    +}

     

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/__definegetter__/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/__definegetter__/index.html index 28773a6bc8..a9c388d009 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/object/__definegetter__/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/object/__definegetter__/index.html @@ -22,7 +22,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/__defineGetter__

    描述

    __defineGetter__ 方法可以为一个已经存在的对象设置(新建或修改)访问器属性,而 {{jsxref("Operators/get", "对象字面量中的 get 语法", "", 1)}} 只能在新建一个对象时使用。

    -

    示例

    +

    示例

    // 请注意,该方法是非标准的:
     
     var o = {};
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/__definesetter__/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/__definesetter__/index.html
    index 81a159b69f..4c9dce1dd4 100644
    --- a/files/zh-cn/web/javascript/reference/global_objects/object/__definesetter__/index.html
    +++ b/files/zh-cn/web/javascript/reference/global_objects/object/__definesetter__/index.html
    @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/__defineSetter__
     ---
     
    {{JSRef("Global_Objects", "Object")}} {{non-standard_header}} {{deprecated_header}}
    -

    概述

    +

    概述

    __defineSetter__ 方法可以将一个函数绑定在当前对象的指定属性上,当那个属性被赋值时,你所绑定的函数就会被调用。

    语法

    obj.__defineSetter__(prop, fun)
    @@ -32,7 +32,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/__defineSetter__

    __defineSetter__ 方法可以为一个已经存在的对象设置(新建或修改)访问器属性,而 {{jsxref("Operators/set", "对象字面量中的 set 语法", "", 1)}} 只能在新建一个对象时使用。

    规范

    不属于任何规范。

    -

    浏览器兼容性

    +

    浏览器兼容性

    {{CompatibilityTable}}
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/create/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/create/index.html index a9b54f733d..073605d77f 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/object/create/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/object/create/index.html @@ -75,7 +75,7 @@ console.log('Is rect an instance of Shape?', rect instanceof Shape); // true rect.move(1, 1); // Outputs, 'Shape moved.'
    -

    如果你希望能继承到多个对象,则可以使用混入的方式。

    +

    如果你希望能继承到多个对象,则可以使用混入的方式。

    function MyClass() {
          SuperClass.call(this);
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/defineproperty/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/defineproperty/index.html
    index beaca31a6a..c711f8b4d5 100644
    --- a/files/zh-cn/web/javascript/reference/global_objects/object/defineproperty/index.html
    +++ b/files/zh-cn/web/javascript/reference/global_objects/object/defineproperty/index.html
    @@ -88,7 +88,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/defineProperty
     

    描述符默认值汇总

      -
    • 拥有布尔值的键 configurableenumerablewritable 的默认值都是 false
    • +
    • 拥有布尔值的键 configurableenumerablewritable 的默认值都是 false
    • 属性值和函数的键 valuegetset 字段的默认值为 undefined
    @@ -172,11 +172,11 @@ Object.defineProperty(obj, "key", withValue("static"));

    示例

    -

    如果你想了解如何使用 Object.defineProperty 方法和类二进制标记语法,可以看看这些额外示例

    +

    如果你想了解如何使用 Object.defineProperty 方法和类二进制标记语法,可以看看这些额外示例

    创建属性

    -

    如果对象中不存在指定的属性,Object.defineProperty() 会创建这个属性。当描述符中省略某些字段时,这些字段将使用它们的默认值。

    +

    如果对象中不存在指定的属性,Object.defineProperty() 会创建这个属性。当描述符中省略某些字段时,这些字段将使用它们的默认值。

    var o = {}; // 创建一个新对象
     
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/getownpropertydescriptors/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/getownpropertydescriptors/index.html
    index f07f3bfa33..ebce4498fa 100644
    --- a/files/zh-cn/web/javascript/reference/global_objects/object/getownpropertydescriptors/index.html
    +++ b/files/zh-cn/web/javascript/reference/global_objects/object/getownpropertydescriptors/index.html
    @@ -41,14 +41,14 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDes
     
     

    创建子类的典型方法是定义子类,将其原型设置为超类的实例,然后在该实例上定义属性。这么写很不优雅,特别是对于 getters 和 setter 而言。 相反,您可以使用此代码设置原型:

    -
    function superclass() {}
    -superclass.prototype = {
    -  // 在这里定义方法和属性
    -};
    -function subclass() {}
    -subclass.prototype = Object.create(superclass.prototype, Object.getOwnPropertyDescriptors({
    -  // 在这里定义方法和属性
    -}));
    +
    function superclass() {}
    +superclass.prototype = {
    +  // 在这里定义方法和属性
    +};
    +function subclass() {}
    +subclass.prototype = Object.create(superclass.prototype, Object.getOwnPropertyDescriptors({
    +  // 在这里定义方法和属性
    +}));

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/is/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/is/index.html index 860a49d231..f9f8f0a2fd 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/object/is/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/object/is/index.html @@ -14,7 +14,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/is

    Object.is() 方法判断两个值是否为同一个值

    -

    语法

    +

    语法

    Object.is(value1, value2);
    @@ -119,7 +119,7 @@ Object.is(-0, -0); // true Object.is(NaN, 0/0); // true
    -

    规范

    +

    规范

    JavaScript 与 JSON 的区别
    {{SpecName('ES6', '#sec-math.floor', 'Math.floor')}}{{SpecName('ES6', '#sec-math.floor', 'Math.floor')}}  {{Spec2('ES6')}}
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/setprototypeof/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/setprototypeof/index.html index 79ab23e2b6..0bc82c3e09 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/object/setprototypeof/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/object/setprototypeof/index.html @@ -49,7 +49,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf

    Polyfill

    -

    我们必须借助非标准的  

    +

    我们必须借助非标准的  

    使用较旧的 {{jsxref("Object.prototype.__proto__")}} 属性,我们可以很容易地定义Object.setPrototypeOf 如果它不可用:

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/tosource/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/tosource/index.html index 23d070b86a..e609077520 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/object/tosource/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/object/tosource/index.html @@ -73,7 +73,7 @@ alert(new Person("Joe").toSource()); // ---> new Person("Joe")

    循环引用限制

    -

    对于包含对自身的引用的对象 (例如, 循环链表或可以遍历两种方式的树), toSource()不会重新创建自引用, 如火狐24。例如:

    +

    对于包含对自身的引用的对象 (例如, 循环链表或可以遍历两种方式的树), toSource()不会重新创建自引用, 如火狐24。例如:

    var obj1 = {};
     var obj2 = { a: obj1 };
    @@ -87,7 +87,7 @@ obj1 = eval(objSource);
     
     console.log('Cyclical: ' + (obj1.b.a == obj1));
    -

    如果使用循环结构, 并且需要 toSource(), 则对象必须提供对 toSource() 的重写,  无论是对构造函数的引用还是提供匿名函数。

    +

    如果使用循环结构, 并且需要 toSource(), 则对象必须提供对 toSource() 的重写,  无论是对构造函数的引用还是提供匿名函数。

    示例

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/tostring/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/tostring/index.html index 7ff9cdb557..55310e85b0 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/object/tostring/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/object/tostring/index.html @@ -41,7 +41,7 @@ o.toString(); // 返回 [object Object]

    覆盖默认的 toString 方法

    -

    可以自定义一个方法,来取代默认的 toString() 方法。该 toString() 方法不能传入参数,并且必须返回一个字符串。自定义的 toString() 方法可以是任何我们需要的值,但如果它附带有关对象的信息,它将变得非常有用。

    +

    可以自定义一个方法,来取代默认的 toString() 方法。该 toString() 方法不能传入参数,并且必须返回一个字符串。自定义的 toString() 方法可以是任何我们需要的值,但如果它附带有关对象的信息,它将变得非常有用。

    以下代码定义了 Dog 对象类型,并创建了一个 Dog 类型的 theDog 对象:

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/valueof/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/valueof/index.html index 1d732df222..c9f98bebc4 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/object/valueof/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/object/valueof/index.html @@ -149,16 +149,16 @@ console.log( str2.valueOf() === str2 ); // false

    改写 .prototype.valueof

    -
    function MyNumberType(n) {
    -    this.number = n;
    -}
    +
    function MyNumberType(n) {
    +    this.number = n;
    +}
     
    -MyNumberType.prototype.valueOf = function() {
    -    return this.number;
    -};
    +MyNumberType.prototype.valueOf = function() {
    +    return this.number;
    +};
     
    -var myObj = new MyNumberType(4);
    -myObj + 3; // 7
    +var myObj = new MyNumberType(4); +myObj + 3; // 7

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/values/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/values/index.html index c2d4cc3526..d744ebcb13 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/object/values/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/object/values/index.html @@ -57,7 +57,7 @@ console.log(Object.values('foo')); // ['f', 'o', 'o']

    Polyfill 

    -

    如果要 Object.values兼容不支持它的旧环境,可在 tc39/proposal-object-values-entries 或 es-shims/Object.values 中找到 Polyfill 。

    +

    如果要 Object.values兼容不支持它的旧环境,可在 tc39/proposal-object-values-entries 或 es-shims/Object.values 中找到 Polyfill 。

    根据Object.keys()的Polyfill仿写一个:

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/parsefloat/index.html b/files/zh-cn/web/javascript/reference/global_objects/parsefloat/index.html index 6469340da8..21d4e0bfbd 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/parsefloat/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/parsefloat/index.html @@ -55,13 +55,13 @@ translation_of: Web/JavaScript/Reference/Global_Objects/parseFloat

    下面的例子都返回3.14

    -
    parseFloat(3.14);
    -parseFloat('3.14');
    -parseFloat('  3.14  ');
    -parseFloat('314e-2');
    -parseFloat('0.0314E+2');
    -parseFloat('3.14some non-digit characters');
    -parseFloat({ toString: function() { return "3.14" } });
    +
    parseFloat(3.14);
    +parseFloat('3.14');
    +parseFloat('  3.14  ');
    +parseFloat('314e-2');
    +parseFloat('0.0314E+2');
    +parseFloat('3.14some non-digit characters');
    +parseFloat({ toString: function() { return "3.14" } });

    parseFloat返回NaN

    @@ -74,8 +74,8 @@ translation_of: Web/JavaScript/Reference/Global_Objects/parseFloat

    以下例子均返回 900719925474099300,当整数太大以至于不能被转换时将失去精度。

    -
    parseFloat(900719925474099267n);
    -parseFloat('900719925474099267n');
    +
    parseFloat(900719925474099267n);
    +parseFloat('900719925474099267n');

    规范

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/parseint/index.html b/files/zh-cn/web/javascript/reference/global_objects/parseint/index.html index b3e5937b9b..8f28abb2ae 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/parseint/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/parseint/index.html @@ -33,7 +33,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/parseInt
    radix {{optional_inline}}
    -
    236,表示字符串的基数。例如指定 16 表示被解析值是十六进制数。请注意,10不是默认值!
    +
    236,表示字符串的基数。例如指定 16 表示被解析值是十六进制数。请注意,10不是默认值!
    文章后面的描述解释了当参数 radix 不传时该函数的具体行为。
    @@ -145,11 +145,11 @@ parseInt("08");

    ECMAScript 5 移除了八进制解析

    -

    ECMAScript 5 规范不再允许parseInt函数的实现环境把以0字符开始的字符串作为八进制数值。ECMAScript 5 陈述如下:

    +

    ECMAScript 5 规范不再允许parseInt函数的实现环境把以0字符开始的字符串作为八进制数值。ECMAScript 5 陈述如下:

    根据给定radix,parseInt函数产生一个由字符串参数内容解析过来的整数值。字符串中开头的空白会被忽略。如果radix没有指定或者为0,参数会被假定以10为基数来解析,如果数值以字符对0x或0X开头,会假定以16为基数来解析。

    -

    这与ECMAScript 3有所不同,ECMAScript 3仅仅是不提倡这种做法但并没有禁止这种做法。

    +

    这与ECMAScript 3有所不同,ECMAScript 3仅仅是不提倡这种做法但并没有禁止这种做法。

    直至2013年,很多实现环境并没有采取新的规范所规定的做法, 而且由于必须兼容旧版的浏览器,所以永远都要明确给出radix参数的值.

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/promise/index.html b/files/zh-cn/web/javascript/reference/global_objects/promise/index.html index 653e2f0704..e8ff35c09e 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/promise/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/promise/index.html @@ -28,9 +28,9 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise
  • 已拒绝(rejected): 意味着操作失败。
  • -

    待定状态的 Promise 对象要么会通过一个值被兑现(fulfilled),要么会通过一个原因(错误)被拒绝(rejected)。当这些情况之一发生时,我们用 promise 的 then 方法排列起来的相关处理程序就会被调用。如果 promise 在一个相应的处理程序被绑定时就已经被兑现或被拒绝了,那么这个处理程序就会被调用,因此在完成异步操作和绑定处理方法之间不会存在竞争状态。

    +

    待定状态的 Promise 对象要么会通过一个值被兑现(fulfilled),要么会通过一个原因(错误)被拒绝(rejected)。当这些情况之一发生时,我们用 promise 的 then 方法排列起来的相关处理程序就会被调用。如果 promise 在一个相应的处理程序被绑定时就已经被兑现或被拒绝了,那么这个处理程序就会被调用,因此在完成异步操作和绑定处理方法之间不会存在竞争状态。

    -

    因为 {{jsxref("Promise.then", "Promise.prototype.then")}} 和  {{jsxref("Promise.catch", "Promise.prototype.catch")}} 方法返回的是 promise, 所以它们可以被链式调用。

    +

    因为 {{jsxref("Promise.then", "Promise.prototype.then")}} 和  {{jsxref("Promise.catch", "Promise.prototype.catch")}} 方法返回的是 promise, 所以它们可以被链式调用。

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/promise/promise/index.html b/files/zh-cn/web/javascript/reference/global_objects/promise/promise/index.html index e48243fcc9..e79512fa51 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/promise/promise/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/promise/promise/index.html @@ -19,7 +19,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/Promise
    executor
    -
    这是一个双参函数,参数为resolverejectPromise的实现会立即执行executor,并传入resolvereject函数(Promise构造器将会在返回新对象之前executor)。当resolvereject函数被调用时,它们分别对promise执行resolverejectexecutor通常会触发一些异步运算,一旦运算成功完成,则resolve掉这个promise,如果出错则reject掉。如果executor函数执行时抛出异常,promise状态会变为rejectedexecutor的返回值也会被忽略。
    +
    这是一个双参函数,参数为resolverejectPromise的实现会立即执行executor,并传入resolvereject函数(Promise构造器将会在返回新对象之前executor)。当resolvereject函数被调用时,它们分别对promise执行resolverejectexecutor通常会触发一些异步运算,一旦运算成功完成,则resolve掉这个promise,如果出错则reject掉。如果executor函数执行时抛出异常,promise状态会变为rejectedexecutor的返回值也会被忽略。

    例子

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/promise/resolve/index.html b/files/zh-cn/web/javascript/reference/global_objects/promise/resolve/index.html index 6ca8158da1..ee41e7d824 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/promise/resolve/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/promise/resolve/index.html @@ -9,7 +9,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Promise/resolve ---
    {{JSRef}}
    -
    Promise.resolve(value)方法返回一个以给定值解析后的{{jsxref("Promise")}} 对象。如果这个值是一个 promise ,那么将返回这个 promise ;如果这个值是thenable(即带有{{jsxref("Promise.then", "\"then\" ")}}方法),返回的promise会“跟随”这个thenable的对象,采用它的最终状态;否则返回的promise将以此值完成。此函数将类promise对象的多层嵌套展平。
    +
    Promise.resolve(value)方法返回一个以给定值解析后的{{jsxref("Promise")}} 对象。如果这个值是一个 promise ,那么将返回这个 promise ;如果这个值是thenable(即带有{{jsxref("Promise.then", "\"then\" ")}}方法),返回的promise会“跟随”这个thenable的对象,采用它的最终状态;否则返回的promise将以此值完成。此函数将类promise对象的多层嵌套展平。
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/proxy/proxy/setprototypeof/index.html b/files/zh-cn/web/javascript/reference/global_objects/proxy/proxy/setprototypeof/index.html index 48e7f6be60..d2b65b1a9c 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/proxy/proxy/setprototypeof/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/proxy/proxy/setprototypeof/index.html @@ -49,7 +49,7 @@ original_slug: Web/JavaScript/Reference/Global_Objects/Proxy/handler/setPrototyp

    如果违反了下列规则,则proxy将抛出一个{{jsxref("TypeError")}}:

    示例

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/reflect/comparing_reflect_and_object_methods/index.html b/files/zh-cn/web/javascript/reference/global_objects/reflect/comparing_reflect_and_object_methods/index.html index e846cf7190..0bfa4fcb10 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/reflect/comparing_reflect_and_object_methods/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/reflect/comparing_reflect_and_object_methods/index.html @@ -129,7 +129,7 @@ original_slug: Web/JavaScript/Reference/Global_Objects/Reflect/比较_Reflect_ diff --git a/files/zh-cn/web/javascript/reference/global_objects/reflect/construct/index.html b/files/zh-cn/web/javascript/reference/global_objects/reflect/construct/index.html index 8c6c4e2126..174cab0ccb 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/reflect/construct/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/reflect/construct/index.html @@ -40,7 +40,7 @@ var obj = Reflect.construct(Foo, args);

    Reflect.construct() vs Object.create()

    -

    在新语法Reflect出现之前,是通过明确指定构造函数和原型对象( 使用{{jsxref("Object.create()")}})来创建一个对象的。

    +

    在新语法Reflect出现之前,是通过明确指定构造函数和原型对象( 使用{{jsxref("Object.create()")}})来创建一个对象的。

    function OneClass() {
         this.name = 'one';
    @@ -68,7 +68,7 @@ console.log(obj2 instanceof OtherClass); // true

    虽然两种方式结果相同,但在创建对象过程中仍一点不同。 

    -

    当使用Object.create()和{{jsxref("Function.prototype.apply()")}}时,如果不使用new操作符调用构造函数,构造函数内部的new.target值会指向undefined

    +

    当使用Object.create()和{{jsxref("Function.prototype.apply()")}}时,如果不使用new操作符调用构造函数,构造函数内部的new.target值会指向undefined

    当调用Reflect.construct()来创建对象,new.target值会自动指定到target(或者newTarget,前提是newTarget指定了)。

    @@ -97,7 +97,7 @@ OneClass.apply(obj3, args); // OneClass // undefined -

    举例

    +

    举例

    使用 Reflect.construct()

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/regexp/@@matchall/index.html b/files/zh-cn/web/javascript/reference/global_objects/regexp/@@matchall/index.html index d5aeafd16a..6f400c0ff2 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/regexp/@@matchall/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/regexp/@@matchall/index.html @@ -49,7 +49,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/@@matchAll var str = '2016-01-02'; var result = re[Symbol.matchAll](str); -console.log(Array.from(result, x => x[0])); +console.log(Array.from(result, x => x[0])); // ["2016", "01", "02"] diff --git a/files/zh-cn/web/javascript/reference/global_objects/regexp/dotall/index.html b/files/zh-cn/web/javascript/reference/global_objects/regexp/dotall/index.html index 1dc070139f..37d3c9b92f 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/regexp/dotall/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/regexp/dotall/index.html @@ -20,8 +20,8 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/dotAll

    这实际上意味着"."将会匹配任意的单个Unicode Basic Multilingual Plane (BMP)字符。若要使其与astral字符(大于\uFFFF的Unicode字符)匹配,你应当使用"u"(Unicode)修饰符。一起使用这两个修饰符,"."将无一例外地匹配任意Unicode字符。

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/regexp/exec/index.html b/files/zh-cn/web/javascript/reference/global_objects/regexp/exec/index.html index 6648813f00..b7e9edf7ec 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/regexp/exec/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/regexp/exec/index.html @@ -14,7 +14,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/RegExp/exec

    exec() 方法在一个指定字符串中执行一个搜索匹配。返回一个结果数组或 {{jsxref("null")}}。

    -

    在设置了 {{jsxref("RegExp.global", "global")}} 或 {{jsxref("RegExp.sticky", "sticky")}} 标志位的情况下(如 /foo/g or /foo/y),JavaScript {{jsxref("RegExp")}} 对象是有状态的。他们会将上次成功匹配后的位置记录在 {{jsxref("RegExp.lastIndex", "lastIndex")}} 属性中。使用此特性,exec() 可用来对单个字符串中的多次匹配结果进行逐条的遍历(包括捕获到的匹配),而相比之下, {{jsxref("String.prototype.match()")}} 只会返回匹配到的结果。

    +

    在设置了 {{jsxref("RegExp.global", "global")}} 或 {{jsxref("RegExp.sticky", "sticky")}} 标志位的情况下(如 /foo/g or /foo/y),JavaScript {{jsxref("RegExp")}} 对象是有状态的。他们会将上次成功匹配后的位置记录在 {{jsxref("RegExp.lastIndex", "lastIndex")}} 属性中。使用此特性,exec() 可用来对单个字符串中的多次匹配结果进行逐条的遍历(包括捕获到的匹配),而相比之下, {{jsxref("String.prototype.match()")}} 只会返回匹配到的结果。

    如果你只是为了判断是否匹配(true或 false),可以使用 {{jsxref("RegExp.test()")}} 方法,或者 {{jsxref("String.search()")}} 方法。

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/regexp/sticky/index.html b/files/zh-cn/web/javascript/reference/global_objects/regexp/sticky/index.html index f74b96499b..6060a9edc0 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/regexp/sticky/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/regexp/sticky/index.html @@ -75,7 +75,7 @@ regex2.test(".\nfoo"); // true - 索引2是行的开始
    -

    相关链接

    +

    相关链接

    - + diff --git a/files/zh-cn/web/javascript/reference/global_objects/typedarray/index.html b/files/zh-cn/web/javascript/reference/global_objects/typedarray/index.html index 9be826cd36..b3f9275b6d 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/typedarray/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/typedarray/index.html @@ -194,11 +194,11 @@ Int8Array.prototype.foo = "bar";
    ownKeys() N/A -

    {{jsxref("Reflect.ownKeys()")}}返回一个属性名称数组,该属性名称映射到目标对象自己的属性键。如果目标不是Object,则抛出TypeError

    +

    {{jsxref("Reflect.ownKeys()")}}返回一个属性名称数组,该属性名称映射到目标对象自己的属性键。如果目标不是Object,则抛出TypeError

    Typed Array Specification 已过期被ECMAScript 6取代被ECMAScript 6取代
    {{SpecName('ES6', '#sec-typedarray.bytes_per_element', 'TypedArray.BYTES_PER_ELEMENT')}}
    -

    属性

    +

    属性

    {{jsxref("TypedArray.BYTES_PER_ELEMENT")}}
    -
    返回一个数值,代表不同类型的类型化数组对象中,单个元素的字节大小。例如 new Int8Array().BYTES_PER_ELEMENT === 1, new Int16Array().BYTES_PER_ELEMENT === 2 ( 8 位字节为 1,16 位为 2 字节,类推)。   
    +
    返回一个数值,代表不同类型的类型化数组对象中,单个元素的字节大小。例如 new Int8Array().BYTES_PER_ELEMENT === 1, new Int16Array().BYTES_PER_ELEMENT === 2 ( 8 位字节为 1,16 位为 2 字节,类推)。   
    TypedArray.length
    类型化数组中元素的个数,例如 new Int8Array(3).length === 3
    {{jsxref("TypedArray.name")}}
    @@ -275,7 +275,7 @@ for (var k in typedArrayTypes)

    浏览器支持

    -

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

    +

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

    兼容性注意事项

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/typedarray/some/index.html b/files/zh-cn/web/javascript/reference/global_objects/typedarray/some/index.html index 2da4a21a65..4c285a5fe1 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/typedarray/some/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/typedarray/some/index.html @@ -49,7 +49,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/TypedArray/some

    some 被调用不会改变 typed array .

    -

    示例

    +

    示例

    Testing size of all typed array elements

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/uint16array/index.html b/files/zh-cn/web/javascript/reference/global_objects/uint16array/index.html index 7816a7642e..aac0ee3cbc 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/uint16array/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/uint16array/index.html @@ -5,7 +5,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/Uint16Array ---
    {{JSRef}}
    -

    该 Uint16Array 类型数组表示16位无符号整数,按平台字节顺序排列。如果需要控制字节顺序,请使用 DataView 代替。内容被初始化为0。建立后,就可以使用对象的方法或使用标准数组索引语法(即使用括号表示法)引用数组中的元素。

    +

    该 Uint16Array 类型数组表示16位无符号整数,按平台字节顺序排列。如果需要控制字节顺序,请使用 DataView 代替。内容被初始化为0。建立后,就可以使用对象的方法或使用标准数组索引语法(即使用括号表示法)引用数组中的元素。

    构造函数

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/uint8array/index.html b/files/zh-cn/web/javascript/reference/global_objects/uint8array/index.html index 1619a2abb3..42345aaf89 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/uint8array/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/uint8array/index.html @@ -158,7 +158,7 @@ var uint8 = new Uint8Array(iterable); 类型化数组规范 Obsolete - 由 ECMAScript 6 取代。 + 由 ECMAScript 6 取代。 {{SpecName('ES6', '#table-45', 'TypedArray constructors')}} diff --git a/files/zh-cn/web/javascript/reference/global_objects/undefined/index.html b/files/zh-cn/web/javascript/reference/global_objects/undefined/index.html index 71a33f157d..20ff8d53a7 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/undefined/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/undefined/index.html @@ -101,9 +101,9 @@ if(y === undefined) { // ReferenceError: y is not defined

    但是,技术方面看来这样的使用方法应该被避免。JavaScript是一个静态作用域语言,所以,一个变量是否被声明可以通过看它是否在一个封闭的上下文中被声明。唯一的例外是全局作用域,但是全局作用域是被绑定在全局对象上的,所以要检查一个变量是否在全局上下文中存在可以通过检查全局对象上是否存在这个属性(比如使用{{jsxref("Operators/in", "in")}}操作符)。

    -
    if ('x' in window) {
    -  // 只有x被全局性的定义 才会这行这些语句
    -}
    +
    if ('x' in window) {
    +  // 只有x被全局性的定义 才会这行这些语句
    +}

    Void操作符和undefined

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/weakmap/get/index.html b/files/zh-cn/web/javascript/reference/global_objects/weakmap/get/index.html index 5dd596c3ff..39357eb6e4 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/weakmap/get/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/weakmap/get/index.html @@ -20,7 +20,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WeakMap/get

    返回值

    -

    返回与指定键相关联的值,如果 WeakMap 对象找不到这个键则返回 undefined

    +

    返回与指定键相关联的值,如果 WeakMap 对象找不到这个键则返回 undefined

    例子

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/weakset/index.html b/files/zh-cn/web/javascript/reference/global_objects/weakset/index.html index 3e04c8ff98..1e82a11d54 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/weakset/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/weakset/index.html @@ -94,7 +94,7 @@ execRecursively(obj => console.log(obj), foo);
    WeakSet.length
    length 属性的值为 0.
    {{jsxref("WeakSet.prototype")}}
    -
    表示WeakSet构造函数的原型。 允许向所有WeakSet对象添加属性。
    +
    表示WeakSet构造函数的原型。 允许向所有WeakSet对象添加属性。

    WeakSet 实例

    diff --git a/files/zh-cn/web/javascript/reference/global_objects/webassembly/compileerror/index.html b/files/zh-cn/web/javascript/reference/global_objects/webassembly/compileerror/index.html index 179b8589a2..9292349082 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/webassembly/compileerror/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/webassembly/compileerror/index.html @@ -15,7 +15,7 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly/CompileError
    message {{optional_inline}}
    -
    有可读性的错误描述。
    +
    有可读性的错误描述。
    fileName {{optional_inline}}{{non-standard_inline}}
    包含导致异常的代码的文件名。
    lineNumber {{optional_inline}}{{non-standard_inline}}
    diff --git a/files/zh-cn/web/javascript/reference/global_objects/webassembly/index.html b/files/zh-cn/web/javascript/reference/global_objects/webassembly/index.html index 66f14793af..87978a0016 100644 --- a/files/zh-cn/web/javascript/reference/global_objects/webassembly/index.html +++ b/files/zh-cn/web/javascript/reference/global_objects/webassembly/index.html @@ -63,10 +63,10 @@ translation_of: Web/JavaScript/Reference/Global_Objects/WebAssembly

    下面的示例(请参见GitHub上的Instantiate-streaming.html演示,并查看在线演示)直接从流式底层源传输.wasm模块,然后对其进行编译和实例化,并通过ResultObject实现promise。 由于instantiateStreaming()函数接受对 {{domxref("Response")}} 对象的promise,因此您可以直接向其传递{{domxref("WindowOrWorkerGlobalScope.fetch()")}}调用,然后它将把返回的response传递给随后的函数。

    -
    var importObject = { imports: { imported_func: arg => console.log(arg) } };
    +
    var importObject = { imports: { imported_func: arg => console.log(arg) } };
     
    -WebAssembly.instantiateStreaming(fetch('simple.wasm'), importObject)
    -.then(obj => obj.instance.exports.exported_func())
    +WebAssembly.instantiateStreaming(fetch('simple.wasm'), importObject) +.then(obj => obj.instance.exports.exported_func())

    返回的ResultObject实例的成员可以被随后访问到,可以调用实例中被导出的方法。

    diff --git a/files/zh-cn/web/javascript/reference/index.html b/files/zh-cn/web/javascript/reference/index.html index dd190e13e5..62768a63d0 100644 --- a/files/zh-cn/web/javascript/reference/index.html +++ b/files/zh-cn/web/javascript/reference/index.html @@ -165,7 +165,7 @@ translation_of: Web/JavaScript/Reference