aboutsummaryrefslogtreecommitdiff
path: root/files/zh-cn/web/javascript
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 21:46:22 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 21:46:22 -0500
commita065e04d529da1d847b5062a12c46d916408bf32 (patch)
treefe0f8bcec1ff39a3c499a2708222dcf15224ff70 /files/zh-cn/web/javascript
parent218934fa2ed1c702a6d3923d2aa2cc6b43c48684 (diff)
downloadtranslated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.gz
translated-content-a065e04d529da1d847b5062a12c46d916408bf32.tar.bz2
translated-content-a065e04d529da1d847b5062a12c46d916408bf32.zip
update based on https://github.com/mdn/yari/issues/2028
Diffstat (limited to 'files/zh-cn/web/javascript')
-rw-r--r--files/zh-cn/web/javascript/ecmascript_7_support_in_mozilla/index.html82
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.1/index.html71
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.2/index.html89
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.3/index.html138
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.4/index.html25
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.5/index.html42
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.6/index.html35
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.7/index.html40
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.8.1/index.html29
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.8.5/index.html122
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/1.8/index.html39
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/ecmascript_5_support_in_mozilla/index.html41
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/ecmascript_6_support_in_mozilla/index.html282
-rw-r--r--files/zh-cn/web/javascript/new_in_javascript/index.html99
-rw-r--r--files/zh-cn/web/javascript/reference/functions/arguments/caller/index.html47
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/array/observe/index.html92
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/array/unobserve/index.html86
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/arraybuffer/transfer/index.html116
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/date/tolocaleformat/index.html73
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/function/arity/index.html16
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/function/isgenerator/index.html40
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/iterator/index.html188
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/number/tointeger/index.html97
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/object/count/index.html88
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/object/eval/index.html85
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/object/getnotifier/index.html93
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/object/nosuchmethod/index.html208
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/object/observe/index.html160
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/object/parent/index.html43
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/object/unobserve/index.html133
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/object/unwatch/index.html105
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/object/watch/index.html201
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/parallelarray/index.html53
-rw-r--r--files/zh-cn/web/javascript/reference/global_objects/string/quote/index.html116
-rw-r--r--files/zh-cn/web/javascript/reference/operators/array_comprehensions/index.html157
-rw-r--r--files/zh-cn/web/javascript/reference/operators/expression_closures/index.html76
-rw-r--r--files/zh-cn/web/javascript/reference/operators/generator_comprehensions/index.html193
-rw-r--r--files/zh-cn/web/javascript/reference/statements/for_each...in/index.html69
38 files changed, 0 insertions, 3669 deletions
diff --git a/files/zh-cn/web/javascript/ecmascript_7_support_in_mozilla/index.html b/files/zh-cn/web/javascript/ecmascript_7_support_in_mozilla/index.html
deleted file mode 100644
index 55732f87ad..0000000000
--- a/files/zh-cn/web/javascript/ecmascript_7_support_in_mozilla/index.html
+++ /dev/null
@@ -1,82 +0,0 @@
----
-title: Mozilla对下一代ECMAScript 的支持
-slug: Web/JavaScript/ECMAScript_7_support_in_Mozilla
-tags:
- - ECMAScript 2015
- - ECMAScript 2016
- - ECMAScript 2017
- - ECMAScript 2018
- - new features
-translation_of: Archive/Web/JavaScript/ECMAScript_Next_support_in_Mozilla
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>下一代 ECMAScript 是指在 ECMAScript 2015 被推出后的 ECMA-262 标准(通常被称为 <a href="/en-US/docs/Web/JavaScript">JavaScript</a>)的新特性。新版本的 ECMAScript 规范会每年发布。</p>
-
-<p>你可以在 <a href="https://github.com/tc39/ecma262">tc39/ecma262</a> 这个仓库中看见当前的规范草案。</p>
-
-<p><a href="https://mail.mozilla.org/listinfo/es-discuss">es-discuss</a> 是一个关于 ECMAScript 标准有关反馈的渠道。</p>
-
-<h2 id="ECMAScript_2016">ECMAScript 2016</h2>
-
-<p>下面的 ECMAScript 2016 特性已实现:</p>
-
-<p> </p>
-
-<ul>
- <li>{{jsxref("Array.prototype.includes()")}} (Firefox 43)</li>
- <li>{{jsxref("TypedArray.prototype.includes()")}} (Firefox 43)</li>
-</ul>
-
-<h2 id="ECMAScript_2017">ECMAScript 2017</h2>
-
-<p>下面的 ECMAScript 2017 特性已实现:</p>
-
-<p> </p>
-
-<ul>
- <li>{{jsxref("Object.values()")}} 和 {{jsxref("Object.entries()")}} (Firefox 47)</li>
- <li>{{jsxref("String.prototype.padEnd()")}} (Firefox 48)</li>
- <li>{{jsxref("String.prototype.padStart()")}} (Firefox 48)</li>
- <li>{{jsxref("Object.getOwnPropertyDescriptors()")}} (Firefox 50)</li>
- <li>异步函数
- <ul>
- <li>{{jsxref("Statements/async_function", "异步函数语句")}} (Firefox 52)</li>
- <li>{{jsxref("Operators/async_function", "异步函数表达式")}} (Firefox 52)</li>
- <li>{{jsxref("AsyncFunction")}} (Firefox 52)</li>
- <li>{{jsxref("Operators/await", "await 语句")}} (Firefox 52)</li>
- </ul>
- </li>
- <li>{{jsxref("Trailing_commas", "函数参数列表的尾后逗号")}} (Firefox 52)</li>
-</ul>
-
-<h2 id="实验性的新特性">实验性的新特性</h2>
-
-<p>以下特性已经实现,但可能仅在 Firefox Nightly 中可用、或者需要浏览器 flags 开启;且此提案的标准可能尚未正式进入 ECMAScript 规范,请小心使用。</p>
-
-<h3 id="ArrayBuffer_对象的新方法"><code>ArrayBuffer</code> 对象的新方法</h3>
-
-<ul>
- <li>{{jsxref("ArrayBuffer.transfer()")}} (<a href="https://gist.github.com/lukewagner/2735af7eea411e18cf20">spec</a>)</li>
-</ul>
-
-<h3 id="新的_TypedObject_对象">新的 TypedObject 对象</h3>
-
-<ul>
- <li><a href="https://github.com/dslomov-chromium/typed-objects-es7">Typed Objects draft</a></li>
-</ul>
-
-<h3 id="新的_Shared_Memory_对象">新的 Shared Memory 对象</h3>
-
-<ul>
- <li>{{jsxref("SharedArrayBuffer")}}</li>
- <li>{{jsxref("Atomics")}}</li>
-</ul>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li><a href="http://www.ecmascript.org/">ECMAScript 官网</a></li>
- <li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1021376">Mozilla ES2016 tracking bug</a></li>
- <li><a href="http://kangax.github.io/compat-table/es7/" title="http://kangax.github.io/es5-compat-table">ECMAScript 2015 support across browsers</a></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.1/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.1/index.html
deleted file mode 100644
index 968f518145..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.1/index.html
+++ /dev/null
@@ -1,71 +0,0 @@
----
-title: JavaScript 1.1的新特性
-slug: Web/JavaScript/New_in_JavaScript/1.1
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.1
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>下面介绍的是JavaScript从Netscape Navigator 2.0到3.0的更新日志。旧的Netscape文档请参考<a href="https://web.archive.org/web/20060318153542/wp.netscape.com/eng/mozilla/3.0/handbook/javascript/index.html">"第1版之后新增的特性"</a>。Netscape Navigator 3.0在1996年8月19发布,是支持JavaScript的浏览器的第二个主要的版本。</p>
-
-<h2 id="JavaScript_版本">JavaScript 版本</h2>
-
-<p>Netscape Navigator 3.0 也引进了JavaScript语言的版本号。</p>
-
-<pre class="brush: html">&lt;SCRIPT LANGUAGE="JavaScript"&gt; &lt;!-- JavaScript for Navigator 2.0. --&gt;
-&lt;SCRIPT LANGUAGE="JavaScript1.1"&gt; &lt;!-- JavaScript for Navigator 3.0. --&gt;</pre>
-
-<h2 id="JavaScript_1.1_新特性">JavaScript 1.1 新特性</h2>
-
-<h3 id="新增的对象">新增的对象</h3>
-
-<ul>
- <li>{{jsxref("Array")}}</li>
- <li>{{jsxref("Boolean")}}</li>
- <li>{{jsxref("Function")}}</li>
- <li>{{jsxref("Number")}}</li>
-</ul>
-
-<h3 id="新增的属性">新增的属性</h3>
-
-<ul>
- <li>{{jsxref("Number.MAX_VALUE")}}</li>
- <li>{{jsxref("Number.MIN_VALUE")}}</li>
- <li>{{jsxref("NaN")}}</li>
- <li>{{jsxref("Number.NEGATIVE_INFINITY")}}</li>
- <li>{{jsxref("Number.POSITIVE_INFINITY")}}</li>
-</ul>
-
-<h3 id="新增的方法">新增的方法</h3>
-
-<ul>
- <li>{{jsxref("Array.prototype.join()")}}</li>
- <li>{{jsxref("Array.prototype.reverse()")}}</li>
- <li>{{jsxref("Array.prototype.sort()")}}</li>
- <li>{{jsxref("Array.prototype.split()")}}</li>
-</ul>
-
-<h3 id="新增的操作符">新增的操作符</h3>
-
-<ul>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Operators/typeof">typeof</a></code></li>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Operators/void">void</a></code></li>
-</ul>
-
-<h3 id="其他新特性">其他新特性</h3>
-
-<ul>
- <li><code><a href="/en-US/docs/Web/HTML/Element/noscript">&lt;noscript&gt;</a></code></li>
- <li><a href="/en-US/docs/Archive/Web/LiveConnect">LiveConnect</a>. Java and JavaScript之间的通信.</li>
-</ul>
-
-<h2 id="JavaScript_1.1修改的功能">JavaScript 1.1修改的功能</h2>
-
-<ul>
- <li>“对象删除”:你可通过以设置对象的引用为null来删除一个对象。</li>
- <li>增加了对象的构造函数和原型属性</li>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/eval">eval()</a></code> 现在是每一个对象的方法(之前是一个内置函数),它能够在指定对象的上下文执行一个JavaScript代码的字符串。</li>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/random">Math.random()</a>现在能在所有平台上工作。</code></li>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toString">toString()</a>:新增了基数作为参数,用于指定表示数值时的进制。</code></li>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/isNaN">isNaN()</a></code> <code>现在能在所有平台上工作。</code> (不再是只能在Unix下工作)</li>
- <li><code>当<a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseFloat">parseFloat()</a></code> 和 <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/parseInt">parseint()</a>指定的字符串(参数)的第一个字符无法转换为数字时,在所有平台都会返回NaN。(在这之前发布的版本里,在Solaris和Irix下它们会返回NaN,而在其他平台会返回0)</code></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.2/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.2/index.html
deleted file mode 100644
index 17fde7ba38..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.2/index.html
+++ /dev/null
@@ -1,89 +0,0 @@
----
-title: JavaScript 1.2的新特性
-slug: Web/JavaScript/New_in_JavaScript/1.2
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.2
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>下面介绍的是JavaScript从Netscape Navigator 3.0到4.0的更新日志。旧的Netscape文档可以在<a href="https://web.archive.org/web/19971015223714/http://developer.netscape.com/library/documentation/communicator/jsguide/js1_2.htm">archive.org</a>上面找到。Netscape Navigator 4.0在1997年6月11日发布,它是是支持JavaScript的浏览器的第三个主要的版本。</p>
-
-<h2 id="JavaScript_版本">JavaScript 版本</h2>
-
-<p>Netscape Navigator 4.0将JavaScript语言的版本升到1.2。需要注意的是,Netscape Navigator 3.0以及更早的版本忽略了设置为"JavaScript 1.2"和更高的版本的脚本语言属性。</p>
-
-<pre class="brush: html">&lt;SCRIPT LANGUAGE="JavaScript1.1"&gt; &lt;!-- JavaScript for Navigator 3.0. --&gt;
-&lt;SCRIPT LANGUAGE="JavaScript1.2"&gt; &lt;!-- JavaScript for Navigator 4.0. --&gt;</pre>
-
-<h2 id="JavaScript_1.2新特性">JavaScript 1.2新特性</h2>
-
-<h3 id="新增的对象">新增的对象</h3>
-
-<ul>
- <li>可以使用简明的字面记号来创建对象。(灵感来自Python 1.x的dictionary的简明语法)</li>
- <li>数字也可以使用简明的字面记号来创建。(灵感来自Python 1.x的字list的简明语法)</li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Functions_and_function_scope/arguments">arguments</a></li>
-</ul>
-
-<h3 id="新增的属性">新增的属性</h3>
-
-<ul>
- <li>{{jsxref("Function.arity")}}</li>
-</ul>
-
-<h3 id="新增的方法">新增的方法</h3>
-
-<ul>
- <li>{{jsxref("Array.prototype.concat()")}}</li>
- <li>{{jsxref("Array.prototype.slice()")}}</li>
- <li>{{jsxref("String.prototype.charCodeAt()")}}</li>
- <li>{{jsxref("String.prototype.concat()")}}</li>
- <li>{{jsxref("String.fromCharCode()")}}</li>
- <li>{{jsxref("String.prototype.match()")}}</li>
- <li>{{jsxref("String.prototype.replace()")}}</li>
- <li>{{jsxref("String.prototype.search()")}}</li>
- <li>{{jsxref("String.prototype.slice()")}}</li>
- <li>{{jsxref("String.prototype.substr()")}}</li>
-</ul>
-
-<h3 id="新增的操作符">新增的操作符</h3>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/delete"><code>delete</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Equality_comparisons_and_when_to_use_them">Equality operators</a> (<code>==</code> and <code>!=</code>)</li>
-</ul>
-
-<h3 id="新增的语句">新增的语句</h3>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/label">Labeled</a> 语句</li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/switch"><code>switch</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/do...while"><code>do...while</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/import"><code>import</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/export"><code>export</code></a></li>
-</ul>
-
-<h3 id="其他新特性">其他新特性</h3>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Guide/Regular_Expressions">Regular Expressions</a></li>
- <li><a href="https://web.archive.org/web/19971015223714/http://developer.netscape.com/library/documentation/communicator/jsguide/js1_2.htm">Signed scripts</a></li>
-</ul>
-
-<h2 id="JavaScript_1.2修改的功能">JavaScript 1.2修改的功能</h2>
-
-<ul>
- <li>现在你可以在函数内部嵌套函数。</li>
- <li>Number现在可以将指定的对象转换为数字。</li>
- <li>如果x是一个不包含格式良好的数字字面的字符串,Number将会生成一个NaN而不是一个错误。</li>
- <li>Stirng现在可以将指定的对象转换为字符串。</li>
- <li>{{jsxref("Array.prototype.sort()")}} 现在能在所有平台上工作。它不会再将未定义的元素转换为null并且排序到数组最大的位置。</li>
- <li>{{jsxref("String.prototype.split()")}}
- <ul>
- <li>它即可以带一个确定的字符串参数去分割目标字符串,也可以带一个正则表达式参数。</li>
- <li>它可以带一个限制的数量,这样可以让最终的结果数组不再包含在这之后的空元素。</li>
- </ul>
- </li>
- <li>{{jsxref("String.prototype.substring()")}}: 不再要求第二个索引值大于第一个。</li>
- <li><code>toString()</code>: 现在可以把对象或者数组转换为文字。</li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/break"><code>break</code></a> 和<a href="/en-US/docs/Web/JavaScript/Reference/Statements/continue"><code>continue</code></a> 语句现在可以在带标签的语句中使用。</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.3/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.3/index.html
deleted file mode 100644
index 193d5156d8..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.3/index.html
+++ /dev/null
@@ -1,138 +0,0 @@
----
-title: JavaScript 1.3的新特性
-slug: Web/JavaScript/New_in_JavaScript/1.3
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.3
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>下面介绍的是JavaScript从Netscape Navigator 4.0到4.5的更新日志。旧的Netscape文档可以在<a href="https://web.archive.org/web/20000815081640/http://developer.netscape.com/docs/manuals/communicator/jsref/js13.html">archive.org</a>上面找到。Netscape Navigator 4.5是在1998年10月19日发布的。</p>
-
-<p>JavaScript 1.3 最显著的变化是通过消除JavaScript1.2和1997年6月发布的新ECMA标准的不一致性来遵守ECMA-262和Unicode。JavaScript 1.2附加的特性,在ECMA-262的规定外还保留在JavaScript语言(见下面的列表中的差异)。</p>
-
-<h2 id="JavaScript_版本">JavaScript 版本</h2>
-
-<p>Netscape Navigator 4.06 到 4.5 将JavaScript语言的版本升到1.3。需要注意的是,Netscape Navigator 4.0 到 4.05以及更早的版本忽略了设置为"JavaScript 1.3"和更高的版本的脚本语言属性。</p>
-
-<pre class="brush: html">&lt;SCRIPT LANGUAGE="JavaScript1.2"&gt; &lt;!-- JavaScript for Navigator 4.0. --&gt;
-&lt;SCRIPT LANGUAGE="JavaScript1.3"&gt; &lt;!-- JavaScript for Navigator 4.5. --&gt;</pre>
-
-<h2 id="JavaScript_1.3新特性">JavaScript 1.3新特性</h2>
-
-<h3 id="新增的全局变量">新增的全局变量</h3>
-
-<ul>
- <li>{{jsxref("NaN")}}</li>
- <li>{{jsxref("Infinity")}}</li>
- <li>{{jsxref("undefined")}}</li>
-</ul>
-
-<h3 id="新增的方法">新增的方法</h3>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/isFinite"><code>isFinite()</code></a></li>
- <li>{{jsxref("Function.prototype.call()")}}</li>
- <li>{{jsxref("Function.prototype.apply()")}}</li>
- <li>{{jsxref("Date.UTC()")}}</li>
- <li>{{jsxref("Date.prototype.getFullYear()")}}</li>
- <li>{{jsxref("Date.prototype.setFullYear()")}}</li>
- <li>{{jsxref("Date.prototype.getMilliseconds()")}}</li>
- <li>{{jsxref("Date.prototype.setMilliseconds()")}}</li>
- <li>{{jsxref("Date.prototype.getUTCFullYear()")}}</li>
- <li>{{jsxref("Date.prototype.getUTCMonth()")}}</li>
- <li>{{jsxref("Date.prototype.getUTCDate()")}}</li>
- <li>{{jsxref("Date.prototype.getUTCHours()")}}</li>
- <li>{{jsxref("Date.prototype.getUTCMinutes()")}}</li>
- <li>{{jsxref("Date.prototype.getUTCSeconds()")}}</li>
- <li>{{jsxref("Date.prototype.getUTCMilliseconds()")}}</li>
- <li>{{jsxref("Date.prototype.toUTCString()")}}</li>
- <li>{{jsxref("Date.prototype.setUTCFullYear()")}}</li>
- <li>{{jsxref("Date.prototype.setUTCMonth()")}}</li>
- <li>{{jsxref("Date.prototype.setUTCDate()")}}</li>
- <li>{{jsxref("Date.prototype.setUTCHours()")}}</li>
- <li>{{jsxref("Date.prototype.setUTCMinutes()")}}</li>
- <li>{{jsxref("Date.prototype.setUTCSeconds()")}}</li>
- <li>{{jsxref("Date.prototype.setUTCMilliseconds()")}}</li>
-</ul>
-
-<h3 id="其他新特性">其他新特性</h3>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Using_the_Equality_Operators" title="JavaScript/Reference/Operators/Comparison_Operators#Using_the_Equality_Operators">严格的相等运算符</a></li>
- <li>支持Unicode</li>
- <li>介绍了一种JavaScript的控制台</li>
-</ul>
-
-<h2 id="JavaScript_1.3_修改的功能">JavaScript 1.3 修改的功能</h2>
-
-<ul>
- <li>修改 <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date" title="JavaScript/Reference/Global_Objects/Date"><code>Date</code></a> 使之符合 ECMA-262
-
- <ul>
- <li>新的构造函数: <code>Date(year, month, day, [,<em>hours</em> [<em>, minutes</em> [<em>, seconds</em> [<em>, milliseconds</em> ]]]])</code></li>
- <li>附加的方法参数
- <ul>
- <li><code>setMonth(month[, date])</code></li>
- <li><code>setHours(hours[, min[, sec[, ms]]])</code></li>
- <li><code>setMinutes(min[, sec[, ms]])</code></li>
- <li><code>setSeconds(sec[, ms])</code></li>
- </ul>
- </li>
- </ul>
- </li>
- <li>数组的长度(属性的长度)现在类型为32位 unsigned 整型。</li>
- <li>{{jsxref("Array.prototype.push()")}}: 在JavaScript 1.2中, <code>push</code> 方法返回最后一个被添加到数组的元素。在JavaScript 1.3下, <code>push</code> 返回数组新的长度。</li>
- <li>{{jsxref("Array.prototype.slice()")}}: 在JavaScript 1.2中, 如果只有一个元素被移除(<code>howMany 参数为1<font face="Open Sans, Arial, sans-serif">,</font>splice方法返回被移除的元素。而在JavaScript 1.3,splice方法通常返回一个包含被删除的元素的数组。如果只有一个元素被移除,则返回一个只包含一个元素的数组。</code></li>
- <li>{{jsxref("String.prototype.replace()")}}的<a href="https://web.archive.org/web/20000815081640/http://developer.netscape.com/docs/manuals/communicator/jsref/js13.html#replace">变化</a>。</li>
- <li>{{jsxref("Boolean")}} 对象的<a href="https://web.archive.org/web/20000815081640/http://developer.netscape.com/docs/manuals/communicator/jsref/js13.html#Boolean">变化</a>。</li>
- <li><code>toString()的</code><a href="https://web.archive.org/web/20000815081640/http://developer.netscape.com/docs/manuals/communicator/jsref/js13.html#toString">变化</a>。</li>
-</ul>
-
-<h2 id="非ECMA-262规范的JavaScript_1.3特性">非ECMA-262规范的JavaScript 1.3特性</h2>
-
-<p>下面是关于1998年6月的ECMA-262版本和JavaScript 1.3之间的比较。下面的特性不是当时的标准的一部分,但是在JavaScript 1.3里面实施了。</p>
-
-<h3 id="关键字和操作符">关键字和操作符</h3>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/Comparison_Operators#Using_the_Equality_Operators" title="JavaScript/Reference/Operators/Comparison_Operators#Using_the_Equality_Operators">严格的相等运算符</a></li>
- <li>垂直制表符(\ v或\ u000B)转义序列。</li>
-</ul>
-
-<h3 id="语句">语句</h3>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/label"><code>label</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/switch"><code>switch</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/do...while"><code>do...while</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/export"><code>export</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/import"><code>import</code></a></li>
-</ul>
-
-<h3 id="内置对象">内置对象</h3>
-
-<ul>
- <li>{{jsxref("RegExp")}}</li>
-</ul>
-
-<h3 id="内置对象的方向">内置对象的方向</h3>
-
-<ul>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toSource">toSource()</a></code></li>
- <li>{{jsxref("Object.prototype.watch()")}}</li>
- <li>{{jsxref("Object.prototype.unwatch()")}}</li>
- <li>{{jsxref("Function.arity")}}</li>
- <li>{{jsxref("Function.prototype.apply()")}}</li>
- <li>{{jsxref("Function.prototype.call()")}}</li>
- <li>{{jsxref("Array.prototype.concat()")}}</li>
- <li>{{jsxref("Array.prototype.pop()")}}</li>
- <li>{{jsxref("Array.prototype.push()")}}</li>
- <li>{{jsxref("Array.prototype.shift()")}}</li>
- <li>{{jsxref("Array.prototype.slice()")}}</li>
- <li>{{jsxref("Array.prototype.splice()")}}</li>
- <li>{{jsxref("String.prototype.concat()")}}</li>
- <li>{{jsxref("String.prototype.concat()")}}</li>
- <li>{{jsxref("String.prototype.match()")}}</li>
- <li>{{jsxref("String.prototype.search()")}}</li>
- <li>{{jsxref("String.prototype.slice()")}}</li>
- <li>{{jsxref("String.prototype.substr()")}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.4/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.4/index.html
deleted file mode 100644
index a76c4f5424..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.4/index.html
+++ /dev/null
@@ -1,25 +0,0 @@
----
-title: JavaScript 1.4的新特性
-slug: Web/JavaScript/New_in_JavaScript/1.4
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.4
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>下面是 JavaScript 1.4 的更新记录,它只可用于 1999 年发布的 Netscape 服务端 JavaScript。 旧的 Netscape 文档可在 <a href="https://web.archive.org/web/20040802225238/http://developer.netscape.com/docs/manuals/js/core/jsref/index.htm">archive.org</a> 找到。</p>
-
-<h2 id="JavaScript_1.4的新特性">JavaScript 1.4的新特性</h2>
-
-<ul>
- <li>异常处理 (<a href="/en-US/docs/Web/JavaScript/Reference/Statements/throw"><code>throw</code></a> 和 <a href="/en-US/docs/Web/JavaScript/Reference/Statements/try...catch"><code>try...catch</code></a>)</li>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Operators/in">in</a></code> 运算符</li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/instanceof"><code>instanceof</code></a> 运算符</li>
-</ul>
-
-<h2 id="JavaScript_1.4的功能改动">JavaScript 1.4的功能改动</h2>
-
-<ul>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/eval" title="JavaScript/Reference/Global_Functions/Eval">eval()</a></code> 的改动 (不能被间接唤起,也不再是Object的一个方法)</li>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Functions_and_function_scope/arguments" title="JavaScript/Reference/Functions/arguments">arguments</a></code> 不再是函数的属性</li>
- <li>废除了 {{jsxref("Function.arity")}} 以支持 {{jsxref("Function.length")}}</li>
- <li><a href="/en-US/docs/Archive/Web/LiveConnect">LiveConnect</a> 的改动</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.5/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.5/index.html
deleted file mode 100644
index 0375ad3f7f..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.5/index.html
+++ /dev/null
@@ -1,42 +0,0 @@
----
-title: JavaScript 1.5 的新特性
-slug: Web/JavaScript/New_in_JavaScript/1.5
-tags:
- - JavaScript
- - 版本
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.5
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>以下为JavaScript 1.5 的更新日志。该版本包含在发行于2000年11月14日的Netscape Navigator 6.0中,也在后续的的Netscape Navigator版本和Firefox 1.0中使用。你可以拿JavaScript 1.5 和JScript version 5.5,Internet Explorer 5.5进行比较,后者发行于2000年7月。相应的ECMA 标准是 ECMA-262 Edition 3版 (自1999年12月)。</p>
-
-<h2 id="JavaScript_1.5_新特性" style="margin-bottom: 20px; line-height: 30px; font-size: 2.14285714285714rem;">JavaScript 1.5 新特性</h2>
-
-<ul>
- <li>{{jsxref("Number.prototype.toExponential()")}}</li>
- <li>{{jsxref("Number.prototype.toFixed()")}}</li>
- <li>{{jsxref("Number.prototype.toPrecision()")}}</li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/const"><code>const</code></a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/try...catch"><code>try...catch</code></a> 语句中支持多个catch语句。</li>
- <li>JavaScript 开发者可以为对象添加getter和setter。</li>
-</ul>
-
-<h2 id="JavaScript_1.5_功能变化" style="margin-bottom: 20px; line-height: 30px; font-size: 2.14285714285714rem;">JavaScript 1.5 功能变化</h2>
-
-<ul>
- <li>运行时错误现在作为异常报告。</li>
- <li>正则表达式变化:
- <ul>
- <li>数量修饰符 — +, *, ? 和 {} — 现在可以跟在 ? 后强行使其变为非贪婪模式。</li>
- <li>"非捕获括号 "(?:x) 可以用来代替“捕获括号” (x)。当使用非捕获括号的时候反向引用不可用。</li>
- <li>支持正负向零宽断言。它们都会根据紧跟着字符串的内容进行断言。</li>
- <li>添加m标记说明正则表达式可以匹配多行。</li>
- </ul>
- </li>
- <li>函数可以在if语句中声明。</li>
- <li>
- <p>函数可以在表达式中声明。</p>
- </li>
-</ul>
-
-<p> </p>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.6/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.6/index.html
deleted file mode 100644
index 928fd75334..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.6/index.html
+++ /dev/null
@@ -1,35 +0,0 @@
----
-title: JavaScript 1.6 的新特性
-slug: Web/JavaScript/New_in_JavaScript/1.6
-tags:
- - JavaScript
- - 版本
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.6
----
-<div class="boxed translate-rendered">
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p class="ordinary-output target-output"><span>以下是JavaScript 1.6的更新日志。JavaScript 1.6已经被包含在2005年11月发布的</span>Firefox 1.5 (Gecko 1.8)中。<span>JavaScript 1.6相对应的</span>ECMA标准是ECMA-262第3版和ECMAScript for XML (E4X),这让它拥有了一些额外的特性 。引入了一些新特性:E4X,<span style="line-height: inherit;">几个新的数组方法,还</span><span style="line-height: inherit;">有</span><span style="line-height: inherit;">数组</span>和<span style="line-height: inherit;">字符串</span><span style="line-height: inherit;">的通用接口(generics)</span>。</p>
-
-<h2 id="JavaScript_1.6新特性">JavaScript 1.6新特性</h2>
-
-<ul>
- <li>使用<a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript" title="JavaScript">JavaScript</a>创建和处理<a href="https://developer.mozilla.org/zh-CN/docs/Glossary/XML" title="XML">XML</a>内容的ECMAScript for XML (<a href="https://developer.mozilla.org/zh-CN/docs/Archive/Web/E4X" title="E4X">E4X</a>) 的支持文档已经添加。 更多详情:<a href="https://developer.mozilla.org/zh-CN/docs/Archive/Web/E4X/Processing_XML_with_E4X" title="E4X/Processing_XML_with_E4X">使用E4X处理XML</a>。</li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/indexOf"><code>Array.prototype.indexOf()</code></a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/lastIndexOf"><code>Array.prototype.lastIndexOf()</code></a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/every"><code>Array.prototype.every()</code></a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/filter"><code>Array.prototype.filter()</code></a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach"><code>Array.prototype.forEach()</code></a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/map"><code>Array.prototype.map()</code></a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/some"><code>Array.prototype.some()</code></a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array#Array_generic_methods" title="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Array#Array_generics">Array generics</a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/String#String_generic_methods" title="https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String#String_generics">String generics</a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Statements/for_each...in"><code>for each...in</code></a></li>
-</ul>
-
-<h2 id="JavaScript_1.6功能变化">JavaScript 1.6功能变化</h2>
-
-<ul>
- <li>产生了一个<a class="link-https" href="https://bugzilla.mozilla.org/show_bug.cgi?id=292215">bug</a>,当形参或实参的数量已经固定了,若 <a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functions/arguments"><code>arguments[n]</code></a> 中的n大于这个数量,就不能被设置。</li>
-</ul>
-</div>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.7/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.7/index.html
deleted file mode 100644
index e268345ca5..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.7/index.html
+++ /dev/null
@@ -1,40 +0,0 @@
----
-title: JavaScript 1.7 的新特性
-slug: Web/JavaScript/New_in_JavaScript/1.7
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.7
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<div> </div>
-
-<div>以下是javaScript 1.7版本的更新日志,这个版本被包括在 <a href="/en-US/Firefox/Releases/2">Firefox 2</a> (2006年10月)。</div>
-
-<p> </p>
-
-<p>JavaScript 1.7是一个引出了一些新特性的语言更新,尤其是generator,iterator,数组推导式, <code>let</code> 表达式和解构赋值。</p>
-
-<h2 id="使用_JavaScript_1.7">使用 JavaScript 1.7</h2>
-
-<p>为了使用 JavaScript 1.7的一些新特性,你需要明确指出你希望使用 JavaScript 1.7。在HTML 或XUL code中,使用:</p>
-
-<pre class="brush: html"><code>&lt;script type="application/javascript;version=1.7"&gt;&lt;/script&gt;</code>
-</pre>
-
-<p>当使用 <a href="/en-US/docs/Mozilla/Projects/SpiderMonkey/Introduction_to_the_JavaScript_shell" title="en-US/docs/Introduction_to_the_JavaScript_shell">JavaScript shell</a>的时候,你需要用 <code>-version 170</code> 开启命令行或者用<code>version()</code> 函数来设置你想使用的JavaScript版本。</p>
-
-<pre class="brush:js">version(170);
-</pre>
-
-<p>你需要指定1.7版本来使用新的“yield”和“let”关键字,因为现存的代码可能用它们当变量或者函数名用。没有涉及到新关键词的特性(比如解构赋值和数组推导式)可以直接使用,而不需要指明JavaScript版本。</p>
-
-<h2 id="JavaScript_1.7的新特性">JavaScript 1.7的新特性</h2>
-
-<p>以下JavaScript 1.7的新特性目前还不是ECMA-262标准的一部分。在最近的Firefox版本中会根据ECMAScipt6中的描述来实现这些功能。具体内容见这些参考页面。</p>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Guide/Iterators_and_Generators">Iterators and generators</a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/Array_comprehensions#Differences_to_the_older_JS1.7.2FJS1.8_comprehensions">Array comprehensions</a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Statements/let"><code>let</code> 声明</a>(Gecko 41中抛弃了 <code>let</code> 声明,见 {{bug(1023609)}})</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/const">const 声明</a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment">解构赋值</a>(Gecko 40中不再支持JS1.7风格的for-in解构,见{{bug(1083498)}})</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.8.1/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.8.1/index.html
deleted file mode 100644
index 9ca99c06af..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.8.1/index.html
+++ /dev/null
@@ -1,29 +0,0 @@
----
-title: JavaScript 1.8.1 的新特性
-slug: Web/JavaScript/New_in_JavaScript/1.8.1
-tags:
- - Firefox 3.5
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.8.1
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>下面是JavaScript 1.8.1 的更新内容. 该版本已包含在 <a href="/en-US/Firefox/Releases/3.5">Firefox 3.5</a> 中.</p>
-
-<p>JavaScript 1.8.1 是在语义上有适度更新的版本; 其主要更新是添加能够提升性能的<a href="/zh-CN/docs/SpiderMonkey/Internals/Tracing_JIT" title="SpiderMonkey/Internals/Tracing JIT">Tracemonkey即时编译器</a>。</p>
-
-<h2 id="JavaScript_1.8.1_新特性">JavaScript 1.8.1 新特性</h2>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getPrototypeOf"><code>Object.getPrototypeOf()</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Guide/Using_native_JSON">原生支持 JSON</a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/Trim"><code>String.prototype.trim()</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/TrimLeft"><code>String.prototype.trimLeft()</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/TrimRight"><code>String.prototype.trimRight()</code></a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith"><code>String.prototype.startsWith()</code></a></li>
-</ul>
-
-<h2 id="JavaScript_1.8.1_功能更新">JavaScript 1.8.1 功能更新</h2>
-
-<ul>
- <li>对象和数组初始化器中的属性隐式设置不再在 JavaScript 中执行 setter。 这使得设置属性值的行为更具可预测性。</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.8.5/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.8.5/index.html
deleted file mode 100644
index a61a892e70..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.8.5/index.html
+++ /dev/null
@@ -1,122 +0,0 @@
----
-title: JavaScript 1.8.5 的新特性
-slug: Web/JavaScript/New_in_JavaScript/1.8.5
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.8.5
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>下面的内容是JavaScript 1.8.5的更新记录. 该版本已包含在<a href="/en-US/Firefox/Releases/4">Firefox 4</a>中.</p>
-
-<h2 id="JavaScript_1.8.5的新特性">JavaScript 1.8.5的新特性</h2>
-
-<h3 id="新函数">新函数</h3>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Function</th>
- <th scope="col">Description</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/create" title="JavaScript/Reference/Global Objects/Object/Create">Object.create()</a></code></td>
- <td>使用指定的原型对象和属性. {{bug("492840")}}</td>
- </tr>
- <tr>
- <td><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty" title="JavaScript/Reference/Global Objects/Object/DefineProperty">Object.defineProperty()</a></code></td>
- <td><span style="background-color: rgba(212, 221, 228, 0.14902);">为对象添加给定的描述信息的</span>属性名.</td>
- </tr>
- <tr>
- <td><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperties" title="JavaScript/Reference/Global Objects/Object/DefineProperties">Object.defineProperties()</a></code></td>
- <td><span style="background-color: rgba(212, 221, 228, 0.14902);">为对象添加多个给定的描述信息的</span><span style="background-color: rgba(212, 221, 228, 0.14902);">属性名</span>.</td>
- </tr>
- <tr>
- <td><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptor" title="JavaScript/Reference/Global Objects/Object/GetOwnPropertyDescriptor">Object.getOwnPropertyDescriptor()</a></code></td>
- <td>返回对象的指定属性名的描述信息. {{bug("505587")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/keys" title="JavaScript/Reference/Global Objects/Object/keys"><code>Object.keys()</code></a></td>
- <td>返回由对象的所有可枚举属性组成的数组. {{bug("307791")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyNames" title="JavaScript/Reference/Global Objects/Object/getOwnPropertyNames"><code>Object.getOwnPropertyNames()</code></a></td>
- <td><span style="background-color: rgba(212, 221, 228, 0.14902);">返回由对象的所有可枚举和不可枚举属性组成的数组</span>. {{bug("518663")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/preventExtensions" title="JavaScript/Reference/Global Objects/Object/preventExtensions"><code>Object.preventExtensions()</code></a></td>
- <td>防止对象进行任意的扩展. {{bug("492849")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isExtensible" title="JavaScript/Reference/Global Objects/Object/isExtensible"><code>Object.isExtensible()</code></a></td>
- <td>判断对象是否可以扩展. {{bug("492849")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/seal" title="JavaScript/Reference/Global Objects/Object/seal"><code>Object.seal()</code></a></td>
- <td>防止其他代码删除对象的属性. {{bug("492845")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isSealed" title="JavaScript/Reference/Global Objects/Object/isSealed"><code>Object.isSealed()</code></a></td>
- <td>判断对象是否是密封<span style="background-color: rgba(212, 221, 228, 0.14902);">(即禁止删除属性)</span>的. {{bug("492845")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze" title="JavaScript/Reference/Global Objects/Object/freezed"><code>Object.freeze()</code></a></td>
- <td>冻结一个对象: 其他代码不能删除或修改任何属性. {{bug("492844")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen" title="JavaScript/Reference/Global Objects/Object/isFrozen"><code>Object.isFrozen()</code></a></td>
- <td>判断对象是否是冻结的. {{bug("492844")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/isArray" title="JavaScript/Reference/Global Objects/Array/isArray"><code>Array.isArray()</code></a></td>
- <td>判断变量是否是数组. {{bug("510537")}}</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toJSON" title="JavaScript/Reference/Global Objects/Date/toJSON"><code>Date.prototype.toJSON()</code></a></td>
- <td>返回一个Date对象用JSON格式化的字符串.</td>
- </tr>
- <tr>
- <td><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/bind" title="JavaScript/Reference/Global_Objects/Function/bind"><code>Function.prototype.bind()</code></a></td>
- <td><span style="background-color: rgba(212, 221, 228, 0.14902);">创建一个新函数,当这个函数被调用时,函数会使用提供的上下文环境(给定的字符序列) {{bug("429507")}}</span></td>
- </tr>
- </tbody>
-</table>
-
-<h3 id="ECMAScript5新特性">ECMAScript5新特性</h3>
-
-<ul>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Operators/get" title="JavaScript/Reference/Operators/Special Operators/get Operator">get</a></code> 和 <code><a href="/en-US/docs/Web/JavaScript/Reference/Operators/set" title="JavaScript/Reference/Operators/Special Operators/set Operator">set</a></code> 操作现在允许标识为数值或字符串. {{bug("520696")}}</li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function/apply" title="JavaScript/Reference/Global Objects/Function/apply"><code>Function.apply()</code></a> 能接受任意的类数组的对象作为参数列表,而不是只支持真正数组.</li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Functions_and_function_scope/Strict_mode" title="JavaScript/Strict mode">支持严格 模式</a></li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/toString" title="JavaScript/Reference/Global Objects/Array/toString"><code>Array.toString()</code></a> 现在允许在非数组上使用,如果允许则会返回调用其 <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/join" title="JavaScript/Reference/Global Objects/Array/join"><code>join()</code></a> 方法,否则调用 <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toString" title="JavaScript/Reference/Global Objects/Object/toString"><code>toString()</code></a> 方法.</li>
-</ul>
-
-<h3 id="其他标准化的工作">其他标准化的工作</h3>
-
-<p>删除一些定义getters和setters的非标准化语法; ECMAScript 5 定义的语法没有变化. 这些语法很难懂且很少被使用; 如果这个影响到你, 详细内容请看 <a class="external" href="http://whereswalden.com/2010/04/16/more-spidermonkey-changes-ancient-esoteric-very-rarely-used-syntax-for-creating-getters-and-setters-is-being-removed/" title="http://whereswalden.com/2010/04/16/more-spidermonkey-changes-ancient-esoteric-very-rarely-used-syntax-for-creating-getters-and-setters-is-being-removed/">这篇博客</a>.</p>
-
-<h3 id="新对象">新对象</h3>
-
-<table class="standard-table">
- <thead>
- <tr>
- <th scope="col">Object</th>
- <th scope="col">Description</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Proxy" title="https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Proxy">Proxy</a></code></td>
- <td>提供创建对象和函数的代理,以在Javascript中支持元编程.</td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="JavaScript_1.8.5中功能变化">JavaScript 1.8.5中功能变化</h2>
-
-<ul>
- <li>ISO 8601 在Date中支持<code>: </code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date" title="https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date">Date</a> 对象的 <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/parse" title="https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/parse">parse()</a> 方法现在支持简单的ISO 8601 格式化时间字符串.</li>
- <li>全局对象变为只读: 按照ECMAScript 5 标准,<a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/NaN" title="JavaScript/Reference/Global Objects/NaN"><code>NaN</code></a>, <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Infinity" title="JavaScript/Reference/Global Objects/Infinity"><code>Infinity</code></a>, 和 <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/undefined" title="JavaScript/Reference/Global Objects/undefined"><code>undefined</code></a> 全局对象变为只读.</li>
- <li><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/Parent" title="JavaScript/Reference/Global Objects/Object/Parent"><code>obj.__parent__</code></a> and <code>obj.__count__</code> 过时. 部分原因如下:: <a class="external" href="http://whereswalden.com/2010/05/07/spidermonkey-change-du-jour-the-special-__parent__-property-has-been-removed/" title="http://whereswalden.com/2010/05/07/spidermonkey-change-du-jour-the-special-__parent__-property-has-been-removed/">SpiderMonkey change du jour: the special __parent__ property has been removed</a> {{bug("551529")}} &amp; {{bug("552560")}}.</li>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse" title="Using native JSON">JSON.parse()</a>不再支持逗号结尾</code>.</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/1.8/index.html b/files/zh-cn/web/javascript/new_in_javascript/1.8/index.html
deleted file mode 100644
index d69d021c25..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/1.8/index.html
+++ /dev/null
@@ -1,39 +0,0 @@
----
-title: New in JavaScript 1.8
-slug: Web/JavaScript/New_in_JavaScript/1.8
-tags:
- - JavaScript
- - 版本
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/1.8
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>以下为JavaScript 1.8的更新日志。JavaScript 1.8 是 Gecko 1.9(已合并在 <a href="/cn/Firefox_3" title="cn/Firefox_3">Firefox 3</a> 中)的一部分。参见 {{ Bug("380236") }} 以跟踪 JavaScript 1.8。</p>
-
-<h3 id=".E4.BD.BF.E7.94.A8_JavaScript_1.8" name=".E4.BD.BF.E7.94.A8_JavaScript_1.8">使用 JavaScript 1.8</h3>
-
-<p>为了可以在 HTML 中使用 JavaScript 1.8 的新特性,需要这样写:</p>
-
-<pre class="eval"> &lt;script type="application/javascript;version=1.8"&gt; ... 你的代码 ... &lt;/script&gt;
-</pre>
-
-<p>另一种方法(不推荐)是使用旧式的 &lt;script&gt; 属性 language,把它定义为 "JavaScript1.8"。</p>
-
-<p>在使用 <a href="https://developer.mozilla.org/zh-CN/docs/Mozilla/Projects/SpiderMonkey/Introduction_to_the_JavaScript_shell" title="Cn/Introduction_to_the_JavaScript_shell">JavaScript shell</a> 、JavaScript XPCOM 组件,或者 XUL <code>&lt;script&gt;</code> 元素的时候,将自动启用最新的JS版本(Mozilla 1.9中的 JS1.8)({{ Bug("381031") }}, {{ Bug("385159") }})。</p>
-
-<p>如果需要使用新的关键字 "yield" 和 "let",你需要指定是1.7版本或者更高的版本,因为现有的代码可能会把这两个关键字用作变量名或者函数名。如果要使用的新特性没有引入任何新的关键字(例如生成器表达式),就可以不指定 JavaScript 的版本。</p>
-
-<h2 id="JavaScript_1.8新特性">JavaScript 1.8新特性</h2>
-
-<ul>
- <li>{{jsxref("Operators/Expression_Closures", "Expression Closures", "", 1)}}.</li>
- <li><a href="/zh-CN/docs/Web/JavaScript/Guide/Iterators_and_Generators">生成器表达式</a>。生成器表达式可以让你方便地创建生成器(在JavaScript1.7中引入)。通常你需要创建一个内含yield的自定义函数来得到一个生成器,而生成器表达式可以让你使用类似数组的语法来达到同样的目的。</li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce"><code>Array.prototype.reduce()</code></a></li>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/ReduceRight"><code>Array.prototype.reduceRight()</code></a></li>
-</ul>
-
-<h2 id="JavaScript_1.8功能更新">JavaScript 1.8功能更新</h2>
-
-<h3 id="对for..in解构的修改"><code>对for..in解构的修改</code></h3>
-
-<p>JavaScript1.8中的一个修改是对JavaScript1.7中引入的数组键值结构相关的bug修复。之前可以用<code>for ( var [key, value] in array )的方式来解构一个数组的键值。但是,这也让对数组的数组的键值解构变得不可能(比如一个迭代器返回一个当前键值对的数组)。现在这个问题可以用for ( var [key, value] in Iterator(array))来解决</code>({{ Bug("366941") }})。</p>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/ecmascript_5_support_in_mozilla/index.html b/files/zh-cn/web/javascript/new_in_javascript/ecmascript_5_support_in_mozilla/index.html
deleted file mode 100644
index 2dc69205cb..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/ecmascript_5_support_in_mozilla/index.html
+++ /dev/null
@@ -1,41 +0,0 @@
----
-title: ECMAScript 5 support in Mozilla
-slug: Web/JavaScript/New_in_JavaScript/ECMAScript_5_support_in_Mozilla
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/ECMAScript_5_support_in_Mozilla
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>ECMAScript 5.1, an older version of the standard upon which JavaScript is based, was approved in June 2011.</p>
-
-<p>The JavaScript runtime used in the latest versions of Mozilla projects including both Firefox and Thunderbird has full support for ECMAScript 5.1 features. This article covers the features supported by different versions of Mozilla's JavaScript runtime.</p>
-
-<h2 id="Supported_features">Supported features</h2>
-
-<h3 id="Added_in_JavaScript_1.8.5_(Gecko_2_Firefox_4_and_later)">Added in JavaScript 1.8.5 (Gecko 2, Firefox 4 and later)</h3>
-
-<p>Firefox 4 has full ECMAScript 5 support including the <code>Object.*</code> methods and strict mode. See <a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.8.5" title="en/JavaScript/New_in_JavaScript/1.8.5">New in JavaScript 1.8.5</a>.</p>
-
-<h3 id="Added_in_JavaScript_1.8.1_(Gecko_1.9.1_Firefox_3.5)">Added in JavaScript 1.8.1 (Gecko 1.9.1, Firefox 3.5)</h3>
-
-<ul>
- <li><a class="internal" href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON" title="En/Using native JSON">Native JSON</a> support</li>
- <li><a class="internal" href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/getPrototypeOf" title="En/Core JavaScript 1.5 Reference/Global Objects/Object/GetPrototypeOf"><code>Object.getPrototypeOf()</code></a> method.</li>
- <li><a class="internal" href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/Trim" title="En/Core JavaScript 1.5 Reference/Global Objects/String/Trim"><code>String.trim()</code></a> method, which trims whitespace from both ends of the string.</li>
- <li>Gecko 1.9.1.4 updated the implementation of <a href="/en-US/docs/Web/JavaScript/Guide/Using_native_JSON#Converting_objects_into_JSON" title="En/Using native JSON#Converting objects into JSON"><code>JSON.stringify()</code></a> to be compliant with ECMAScript 5.</li>
-</ul>
-
-<p>Improvements laid out by ECMAScript 5 have been made in the parsing algorithm that prevents evaluating XHTML as JavaScript code in certain circumstances.</p>
-
-<h3 id="Added_in_JavaScript_1.6_(Gecko_1.8_Firefox_1.5)">Added in JavaScript 1.6 (Gecko 1.8, Firefox 1.5)</h3>
-
-<p>New <a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array"><code>Array</code></a> methods offering several improved methods for manipulating arrays -- have been part of JavaScript since<a href="/en-US/docs/Web/JavaScript/New_in_JavaScript/1.6"> JavaScript 1.6</a>. Now they've been standardized as part of ECMAScript 5.</p>
-
-<h2 id="See_also">See also</h2>
-
-<ul>
- <li><a class="external" href="http://www.ecmascript.org/" title="http://www.ecmascript.org/">ECMAScript web site</a></li>
- <li><a class="external" href="http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf" title="http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-262.pdf">ECMAScript 5.1 specification</a></li>
- <li>John Resig's post on <a class="external" href="http://ejohn.org/blog/objectgetprototypeof/" title="http://ejohn.org/blog/objectgetprototypeof/">Object.getPrototypeOf</a></li>
- <li>Michael J. Ryan's implementation of <a class="external" href="http://frugalcoder.us/post/2010/01/07/EcmaScript-5s-Date-Extensions.aspx" title="http://frugalcoder.us/post/2010/01/07/EcmaScript-5s-Date-Extensions.aspx">ECMAScript5 Dates in JavaScript</a></li>
- <li><a href="http://kangax.github.io/es5-compat-table/" title="http://kangax.github.io/es5-compat-table/">ECMAScript 5 support across browsers</a></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/ecmascript_6_support_in_mozilla/index.html b/files/zh-cn/web/javascript/new_in_javascript/ecmascript_6_support_in_mozilla/index.html
deleted file mode 100644
index 25210c32b2..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/ecmascript_6_support_in_mozilla/index.html
+++ /dev/null
@@ -1,282 +0,0 @@
----
-title: Mozilla 对 ECMAScript 6 的支持
-slug: Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla
-tags:
- - ECMAScript2015
- - ECMAScript6
- - Firefox
- - JavaScript
-translation_of: Archive/Web/JavaScript/New_in_JavaScript/ECMAScript_2015_support_in_Mozilla
----
-<div class="boxed translate-rendered">
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<p>ECMAScript 2015 (6th Edition)是目前 <span>ECMAScript 语言规范的标准</span>。通常被称为"ES2015",在<a href="https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey">SpiderMonkey </a>中它规定了 JavaScript 的实现标准,SpiderMonkey 是一个 JavaScript 引擎,被广泛用于火狐浏览器等谋智的众多产品中。</p>
-
-<p>"ES.next" 的第一份工作草案 (基于 <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_5_support_in_Mozilla">ECMAScript 5.1</a>) 发布于 2011 年 7 月 12 日,代号为 "ES.next" 或 "Harmony"。2014 年 8 月,ECMAScript 2015 草案规范停止增加新的功能,开始进入稳定期与 bug 修复阶段。最终,ECMA-262 Edition 6 于 2015 年 6 月 17 日由 ECMA 联合大会 (ECMA General Assembly) 作为标准正式发布。它同时也是国际工业标准 ISO/IEC 16262:2016。</p>
-
-<p>你可以通过<a href="http://www.ecma-international.org/publications/standards/Ecma-262.htm"> ecma-international.org</a> 免费下载规范的 <a href="http://www.ecma-international.org/publications/files/ECMA-ST/Ecma-262.pdf">PDF</a> 和 <a href="http://www.ecma-international.org/ecma-262/6.0/index.html">HTML </a>版本。</p>
-
-<p><a href="https://mail.mozilla.org/listinfo/es-discuss">es-discuss</a> 是 ECMAScript 规范的讨论与反馈渠道。</p>
-
-<h2 id="Firefox_已经支持的特性">Firefox 已经支持的特性</h2>
-
-<p>这里列出的功能已经在 Firefox 中支持;每个特性后面标注了具体实现的浏览器版本。</p>
-
-<h2 id="标准库">标准库</h2>
-
-<h3 id="Array_对象的补充"><code>Array</code> 对象的补充</h3>
-
-<ul>
- <li>{{jsxref("Array")}} iteration with <code>for...of</code> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/13">Firefox 13</a>)</li>
- <li>{{jsxref("Array.from()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/32">Firefox 32</a>)</li>
- <li>{{jsxref("Array.of()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/25">Firefox 25</a>)</li>
- <li>{{jsxref("Array.prototype.fill()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/31">Firefox 31</a>)</li>
- <li>{{jsxref("Array.prototype.find()")}}, {{jsxref("Array.prototype.findIndex()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/25">Firefox 25</a>)</li>
- <li>{{jsxref("Array.prototype.entries()")}},<br>
- {{jsxref("Array.prototype.keys()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/28">Firefox 28</a>)</li>
- <li>{{jsxref("Array.prototype.copyWithin()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/32">Firefox 32</a>)</li>
- <li>{{jsxref("Array.@@species", "get Array[@@species]")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/48">Firefox 48</a>)</li>
-</ul>
-
-<h3 id="新的_Map_和_Set,以及_WeakMap_和_WeakSet_对象">新的 <code>Map 和 Set,以及 WeakMap</code> <code>和 WeakSet</code> <code>对象</code></h3>
-
-<ul>
- <li>{{jsxref("Map")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/13">Firefox 13</a>)
-
- <ul>
- <li>{{jsxref("Map")}} iteration with <code>for...of</code> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/17">Firefox 17</a>)</li>
- <li>{{jsxref("Map.prototype.forEach()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/25">Firefox 25</a>)</li>
- <li>{{jsxref("Map.prototype.entries()")}},<br>
- {{jsxref("Map.prototype.keys()")}},<br>
- {{jsxref("Map.prototype.values()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/20">Firefox 20</a>)</li>
- <li>Constructor argument: <code>new {{jsxref("Map")}}(null)</code> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/37">Firefox 37</a>)</li>
- <li>Monkey-patched <code>set()</code> in Constructor (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/37">Firefox 37</a>)</li>
- <li>{{jsxref("Map.@@species", "get Map[@@species]")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/41">Firefox 41</a>)</li>
- </ul>
- </li>
- <li>{{jsxref("Set")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/13">Firefox 13</a>)
- <ul>
- <li>{{jsxref("Set")}} iteration with <code>for...of</code> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/17">Firefox 17</a>)</li>
- <li>{{jsxref("Set.prototype.forEach()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/25">Firefox 25</a>)</li>
- <li>{{jsxref("Set.prototype.entries()")}},<br>
- {{jsxref("Set.prototype.keys()")}},<br>
- {{jsxref("Set.prototype.values()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/24">Firefox 24</a>)</li>
- <li>Constructor argument: <code>new {{jsxref("Set")}}(null)</code> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/37">Firefox 37</a>)</li>
- <li>Monkey-patched <code>add()</code> in Constructor (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/37">Firefox 37</a>)</li>
- <li>{{jsxref("Set.@@species", "get Set[@@species]")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/41">Firefox 41</a>)</li>
- </ul>
- </li>
- <li>{{jsxref("WeakMap")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/6">Firefox 6</a>)
- <ul>
- <li>{{jsxref("WeakMap.clear()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/20">Firefox 20</a>)</li>
- <li>optional iterable argument in {{jsxref("WeakMap")}} constructor (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/36">Firefox 36</a>)</li>
- <li>Constructor argument: <code>new {{jsxref("WeakMap")}}(null)</code> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/37">Firefox 37</a>)</li>
- <li>Monkey-patched <code>set()</code> in Constructor (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/37">Firefox 37</a>)</li>
- </ul>
- </li>
- <li>{{jsxref("WeakSet")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/34">Firefox 34</a>)
- <ul>
- <li>Constructor argument: <code>new {{jsxref("WeakSet")}}(null)</code> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/37">Firefox 37</a>)</li>
- <li>Monkey-patched <code>add()</code> in Constructor (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/37">Firefox 37</a>)</li>
- </ul>
- </li>
-</ul>
-
-<h3 id="新的_Math_方法"><code>新的 Math 方法</code></h3>
-
-<ul>
- <li>{{jsxref("Math.imul()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/20">Firefox 20</a>)</li>
- <li>{{jsxref("Math.clz32()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/31">Firefox 31</a>)</li>
- <li>{{jsxref("Math.fround()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/26">Firefox 26</a>)</li>
- <li>{{jsxref("Math.log10()")}}, {{jsxref("Math.log2()")}}, {{jsxref("Math.log1p()")}}, {{jsxref("Math.expm1()")}}, {{jsxref("Math.cosh()")}}, {{jsxref("Math.sinh()")}}, {{jsxref("Math.tanh()")}}, {{jsxref("Math.acosh()")}}, {{jsxref("Math.asinh()")}}, {{jsxref("Math.atanh()")}}, {{jsxref("Math.hypot()")}}, {{jsxref("Math.trunc()")}}, {{jsxref("Math.sign()")}}, {{jsxref("Math.cbrt()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/25">Firefox 25</a>)</li>
-</ul>
-
-<h3 id="Number_对象的补充"><code>Number</code> 对象的补充</h3>
-
-<ul>
- <li>{{jsxref("Number.isNaN()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/16">Firefox 16</a>)</li>
- <li>{{jsxref("Number.isFinite()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/16">Firefox 16</a>)</li>
- <li>{{jsxref("Number.isInteger()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/16">Firefox 16</a>)</li>
- <li>{{jsxref("Number.parseInt()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/25">Firefox 25</a>)</li>
- <li>{{jsxref("Number.parseFloat()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/25">Firefox 25</a>)</li>
- <li>{{jsxref("Number.EPSILON")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/25">Firefox 25</a>)</li>
- <li>{{jsxref("Number.MAX_SAFE_INTEGER")}}, {{jsxref("Number.MIN_SAFE_INTEGER")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/31">Firefox 31</a>)</li>
- <li>{{jsxref("Number.isSafeInteger()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/32">Firefox 32</a>)</li>
-</ul>
-
-<h3 id="Object_对象的补充"><code>Object</code> 对象的补充</h3>
-
-<ul>
- <li>{{jsxref("Object.prototype.__proto__")}} 已经被标准化</li>
- <li>{{jsxref("Object.is()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/22">Firefox 22</a>)</li>
- <li>{{jsxref("Object.setPrototypeOf()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/31">Firefox 31</a>)</li>
- <li>{{jsxref("Object.assign()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/34">Firefox 34</a>)</li>
- <li>{{jsxref("Object.getOwnPropertySymbols()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/33">Firefox 33</a>)</li>
-</ul>
-
-<h3 id="Date_对象的补充"><code>Date</code> 对象的补充</h3>
-
-<ul>
- <li>{{jsxref("Date.prototype")}} is an ordinary object (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/41">Firefox 41</a>)</li>
- <li>generic {{jsxref("Date.prototype.toString")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/41">Firefox 41</a>)</li>
- <li>{{jsxref("Date.prototype.@@toPrimitive", "Date.prototype[@@toPrimitive]")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/44">Firefox 44</a>)</li>
-</ul>
-
-<h3 id="新的_Promise_对象">新的 <code>Promise 对象</code></h3>
-
-<ul>
- <li>{{jsxref("Promise")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/24">Firefox 24</a>,  在 <a href="https://developer.mozilla.org/en-US/Firefox/Releases/29">Firefox 29</a> 中默认启用)</li>
-</ul>
-
-<h3 id="新的_Reflect_对象">新的 <code>Reflect 对象</code></h3>
-
-<ul>
- <li>{{jsxref("Reflect")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/42">Firefox 42</a>)</li>
-</ul>
-
-<h3 id="RegExp_对象的补充"><code>RegExp</code> 对象的补充</h3>
-
-<ul>
- <li>{{jsxref("RegExp")}} sticky (y) flag (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/38">Firefox 38</a>)</li>
- <li>{{jsxref("RegExp")}} unicode (u) flag (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/46">Firefox 46</a>)</li>
- <li>generic {{jsxref("RegExp.prototype.toString")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/39">Firefox 39</a>)</li>
- <li>{{jsxref("RegExp.prototype.@@match()", "RegExp.prototype[@@match]()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/49">Firefox 49</a>)</li>
- <li>{{jsxref("RegExp.prototype.@@replace()", "RegExp.prototype[@@replace]()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/49">Firefox 49</a>)</li>
- <li>{{jsxref("RegExp.prototype.@@search()", "RegExp.prototype[@@search]()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/49">Firefox 49</a>)</li>
- <li>{{jsxref("RegExp.prototype.@@split()", "RegExp.prototype[@@split]()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/49">Firefox 49</a>)</li>
- <li>{{jsxref("RegExp.@@species", "get RegExp[@@species]")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/49">Firefox 49</a>)</li>
-</ul>
-
-<h3 id="String_对象的补充"><code>String</code> 对象的补充</h3>
-
-<ul>
- <li>{{jsxref("String.fromCodePoint()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/29">Firefox 29</a>)</li>
- <li>{{jsxref("String.prototype.codePointAt()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/29">Firefox 29</a>)</li>
- <li>{{jsxref("String.prototype.startsWith()")}}, {{jsxref("String.prototype.endsWith()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/17">Firefox 17</a>)</li>
- <li>{{jsxref("String.prototype.includes()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/40">Firefox 40</a>) (formerly <code>String.prototype.contains()</code> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/17">Firefox 17</a>))</li>
- <li>{{jsxref("String.prototype.repeat()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/24">Firefox 24</a>)</li>
- <li>{{jsxref("String.prototype.normalize()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/31">Firefox 31</a>)</li>
- <li>{{jsxref("String.raw()")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/34">Firefox 34</a>)</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Unicode_code_point_escapes">\u{XXXXXX}</a> Unicode code point escapes (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/40">Firefox 40</a>)</li>
-</ul>
-
-<h3 id="新的_Symbol_对象">新的 <code>Symbol 对象</code></h3>
-
-<ul>
- <li>{{jsxref("Symbol")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/36">Firefox 36</a>)</li>
- <li>{{jsxref("Symbol.iterator")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/36">Firefox 36</a>)</li>
- <li>{{jsxref("Symbol.for()")}} - global Symbol registry (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/36">Firefox 36</a>)</li>
- <li>{{jsxref("Symbol.match")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/40">Firefox 40</a>)</li>
- <li>{{jsxref("Symbol.species")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/41">Firefox 41</a>)</li>
- <li>{{jsxref("Symbol.toPrimitive")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/44">Firefox 44</a>)</li>
- <li>{{jsxref("Symbol.prototype.@@toPrimitive", "Symbol.prototype[@@toPrimitive]")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/44">Firefox 44</a>)</li>
- <li>{{jsxref("Symbol.replace")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/49">Firefox 49</a>)</li>
- <li>{{jsxref("Symbol.search")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/49">Firefox 49</a>)</li>
- <li>{{jsxref("Symbol.split")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/49">Firefox 49</a>)</li>
- <li>{{jsxref("Symbol.hasInstance")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/50">Firefox 50</a>)</li>
-</ul>
-
-<h3 id="Typed_Arrays">Typed Arrays</h3>
-
-<p>Typed arrays 已经合并到 ECMAScript 2015 中,不再具有<a href="https://www.khronos.org/registry/typedarray/specs/latest/">自己单独的规范</a>。</p>
-
-<ul>
- <li>{{jsxref("ArrayBuffer")}}</li>
- <li>{{jsxref("ArrayBuffer.@@species", "get ArrayBuffer[@@species]")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/48">Firefox 48</a>)</li>
- <li>{{jsxref("DataView")}}</li>
- <li>{{jsxref("Int8Array")}}</li>
- <li>{{jsxref("Uint8Array")}}</li>
- <li>{{jsxref("Uint8ClampedArray")}}</li>
- <li>{{jsxref("Int16Array")}}</li>
- <li>{{jsxref("Uint16Array")}}</li>
- <li>{{jsxref("Int32Array")}}</li>
- <li>{{jsxref("Uint32Array")}}</li>
- <li>{{jsxref("Float32Array")}}</li>
- <li>{{jsxref("Float64Array")}}</li>
- <li>{{jsxref("TypedArray.@@species", "get %TypedArray%[@@species]")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/48">Firefox 48</a>)</li>
-</ul>
-
-<h3 id="表达式和操作符">表达式和操作符</h3>
-
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/new.target">new.target</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/41">Firefox 41</a>)</li>
-</ul>
-
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator">Spread operator for arrays</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/16">Firefox 16</a>)
-
- <ul>
- <li>use <code>Symbol.iterator</code> property (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/36">Firefox 36</a>)</li>
- </ul>
- </li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator">Spread operator for function calls</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/27">Firefox 27</a>)
- <ul>
- <li>use <code>Symbol.iterator</code> property (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/36">Firefox 36</a>)</li>
- </ul>
- </li>
-</ul>
-
-<h3 id="语句">语句</h3>
-
-<ul>
- <li>{{jsxref("Statements/for...of", "for...of")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/13">Firefox 13</a>)
-
- <ul>
- <li>works in terms of <code>.iterator()</code> and <code>.next()</code> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/17">Firefox 17</a>)</li>
- <li>use <code>"@@iterator"</code> property (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/27">Firefox 27</a>)</li>
- <li>use <code>Symbol.iterator</code> property (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/36">Firefox 36</a>)</li>
- </ul>
- </li>
-</ul>
-
-<h3 id="函数">函数</h3>
-
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions_and_function_scope/rest_parameters">Rest parameters</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/15">Firefox 15</a>)</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/default_parameters">Default parameters</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/15">Firefox 15</a>)
- <ul>
- <li>Parameters without defaults after default parameters (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/26">Firefox 26</a>)</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Default_parameters#Destructured_parameter_with_default_value_assignment" title="Default function parameters allow formal parameters to be initialized with default values if no value or undefined is passed.">Destructured parameters with default value assignment</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/41">Firefox 41</a>)</li>
- </ul>
- </li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/arrow_functions">Arrow functions</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/22">Firefox 22</a>)</li>
- <li>{{jsxref("Statements/function*", "Generator function")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/26">Firefox 26</a>)
- <ul>
- <li>{{jsxref("Operators/yield", "yield")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/26">Firefox 26</a>)</li>
- <li>{{jsxref("Operators/yield*", "yield*")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/27">Firefox 27</a>)</li>
- </ul>
- </li>
- <li>{{jsxref("Functions/arguments/@@iterator", "arguments[@@iterator]")}} (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/46">Firefox 46</a>)</li>
-</ul>
-
-<h3 id="其他特性">其他特性</h3>
-
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Lexical_grammar#Numeric_literals">Binary and octal numeric literals</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/25">Firefox 25</a>)</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/template_strings">Template strings</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/34">Firefox 34</a>)</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Property_definitions">Object initializer: shorthand property names</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/33">Firefox 33</a>)</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Computed_property_names">Object initializer: computed property names</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/34">Firefox 34</a>)</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Object_initializer#Method_definitions">Object initializer: shorthand method names</a> (<a href="https://developer.mozilla.org/en-US/Firefox/Releases/34">Firefox 34</a>)</li>
-</ul>
-
-<h2 id="和_ES2015_规范不兼容的特性">和 ES2015 规范不兼容的特性</h2>
-
-<p>Firefox (部分)实现了以下特性,但是与规范不兼容。原因有如下几个:Firefox 是依据 ES 6 规范的早期草案来实现,或者 Firefox 是作为实验性特性来实现,而当时与之类似的特性还没有被添加到 ES2015 规范中。</p>
-
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Iterators_and_Generators">Legacy iterators and generators</a> (<a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/1.7">JS 1.7</a>, <a href="https://developer.mozilla.org/en-US/Firefox/Releases/2">Firefox 2</a>)</li>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment">Destructuring assignment</a> (<a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/1.7">JS 1.7</a>, <a href="https://developer.mozilla.org/en-US/Firefox/Releases/2">Firefox 2</a>) (ES2015 compliance {{bug("1055984")}})</li>
- <li>{{jsxref("Statements/const", "const")}} (<a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/1.5">JS 1.5</a>, Firefox 1.0) (ES2015 compliance {{bug("950547")}} implemented in Firefox 51)</li>
- <li>{{jsxref("Statements/let", "let")}} (<a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/1.7">JS 1.7</a>, <a href="https://developer.mozilla.org/en-US/Firefox/Releases/2">Firefox 2</a>) (ES2015 compliance {{bug("950547")}} implemented in Firefox 51)</li>
-</ul>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_7_support_in_Mozilla">Mozilla 支持的 ECMAScript 2016 特性</a></li>
- <li><a href="http://wiki.ecmascript.org/doku.php?id=harmony:specification_drafts">ECMAScript 2015 规范草案</a></li>
- <li><a href="https://bugzilla.mozilla.org/show_bug.cgi?id=694100">Mozilla ES2015 tracking bug</a></li>
- <li><a href="https://kangax.github.io/compat-table/es6/" title="https://kangax.github.io/compat-table/es6/">ECMAScript 2015 的浏览器支持情况</a></li>
-</ul>
-</div>
diff --git a/files/zh-cn/web/javascript/new_in_javascript/index.html b/files/zh-cn/web/javascript/new_in_javascript/index.html
deleted file mode 100644
index 95eee26559..0000000000
--- a/files/zh-cn/web/javascript/new_in_javascript/index.html
+++ /dev/null
@@ -1,99 +0,0 @@
----
-title: JavaScript更新
-slug: Web/JavaScript/New_in_JavaScript
-tags:
- - ECMAScript
- - ECMAScript 2017
- - JavaScript
- - 版本
-translation_of: Archive/Web/JavaScript/New_in_JavaScript
----
-<div>{{jsSidebar("New_in_JS")}}</div>
-
-<div> </div>
-
-<p class="summary">本章包含有关JavaScript版本历史记录的信息,以及基于<strong>Mozilla/SpiderMonkey-</strong>的JavaScript应用程序的实现状态,例如Firefox。</p>
-
-<h2 id="ECMAScript版本">ECMAScript版本</h2>
-
-<dl>
- <dt><a href="/en-US/docs/Web/JavaScript/Language_Resources">语言资源</a></dt>
- <dd>在这里学习更多的JavaScript的标准ECMAScript。</dd>
- <dt><a href="/zh-CN/docs/JavaScript/ECMAScript_5_support_in_Mozilla">ECMAScript 5的支持情况</a></dt>
- <dd>Mozilla 的引擎和产品 对于标准ECMA-262 Edition 5.1的支持情况。</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_6_support_in_Mozilla">ECMAScript 2015的支持情况</a></dt>
- <dd>Mozilla 的引擎和产品对于标准ECMA-262 Edition 6的支持情况。</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/ECMAScript_7_support_in_Mozilla">ECMAScript 2016的支持情况</a></dt>
- <dd>Mozilla 的引擎和产品对于即将到来的ECMA-262 Edition 7的支持情况.</dd>
-</dl>
-
-<h2 id="JavaScript发布说明">JavaScript发布说明</h2>
-
-<dl>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/Firefox_JavaScript_changelog">Firefox中的JavaScript更新日志</a></dt>
- <dd>Firefox 5以及以后版本的JavaScript日志更新情况。</dd>
- <dt>Chrome中的JavaScript更新日志</dt>
- <dd>Chrome中的JavaScript日志更新情况。</dd>
-</dl>
-
-<h2 id="JavaScript版本">JavaScript版本</h2>
-
-<p><strong>弃用项</strong> ({{deprecated_inline()}})。这里面是一些已经确定的弃用的api以及一下Mozilla组织专用的API  <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=867609">正在被慢慢的弃用</a>不建议使用。Firefox 4 所用的javascirpt引擎是 ECMAScript(1.8.5). 就像现在我们提到的新的引擎 ECMA-262 里面的标准都在 ECMAScript 2015 里面的实现了API。</p>
-
-<p>JavaScript于1996年3月在Netscape Navigator 2.0和Internet Explorer 2.0中发布为1.0版。</p>
-
-<dl>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.1">JavaScript 1.1</a></dt>
- <dd>该版本在Netscape Navigator 3.0中使用。发布于1996年8月19日。</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.2">JavaScript 1.2</a></dt>
- <dd>该版本在Netscape Navigator 4.0-4.05中使用。发布于1997年6月11日。</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.3">JavaScript 1.3</a></dt>
- <dd>该版本在Netscape Navigator 4.06-4.7x中使用。发布于1998年10月19日。符合ECMA-262第1版和第2版的标准</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.4">JavaScript 1.4</a></dt>
- <dd>版本在Netscape的服务器端发送的JavaScript。于1999年发行。</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.5">JavaScript 1.5</a></dt>
- <dd>该版本在Netscape Navigator 6.0和Firefox 1.0中使用。发布于2000年11月14日。符合ECMA-262第3版的标准</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.6">JavaScript 1.6</a></dt>
- <dd>该版本在 Firefox 1.5中使用。发布于2005年11月。加入了ECMAScript标准的XML(E4X),Array方法,String以及泛型</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.7">JavaScript 1.7</a></dt>
- <dd>Version shipped in Firefox 2. Released in October 2006.<br>
- Includes generators, iterators, array comprehensions, <code>let</code> expressions, and destructuring assignment.</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.8">JavaScript 1.8</a></dt>
- <dd>Version shipped in Firefox 3. Released in June 2008.</dd>
- <dd>包括表达式闭包,生成器表达式和<code>Array.reduce()</code></dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.8.1">JavaScript 1.8.1</a></dt>
- <dd>Version shipped in Firefox 3.5. Released on <span class="st">June 30, 2009.</span></dd>
- <dd>包括TraceMonkey JIT并原生支持JSON。</dd>
- <dt>JavaScript 1.8.2</dt>
- <dd>Version shipped in Firefox 3.6. Released June 22, 2009.<br>
- Includes only minor changes.</dd>
- <dt><a href="/zh-CN/docs/Web/JavaScript/New_in_JavaScript/1.8.5">JavaScript 1.8.5</a></dt>
- <dd>Version shipped in Firefox 4. Released July 27, 2010.包括符合ECMA-262 Edition 5的许多新功能。 这是最后一个JavaScript版本。</dd>
- <dt>ES2015</dt>
-</dl>
-
-<ul>
- <li>6 th Edition /  June 2015<span style="display: none;"> </span></li>
- <li>https://www.ecma-international.org/publications/standards/Ecma-262.htm</li>
- <li>https://www.ecma-international.org/ecma-262/6.0/index.html</li>
-</ul>
-
-<p>ES2016</p>
-
-<ul>
- <li>7 th Edition / June 2016</li>
- <li>https://www.ecma-international.org/publications/standards/Ecma-262.htm</li>
- <li>https://www.ecma-international.org/ecma-262/7.0/index.html</li>
-</ul>
-
-<p>ES2017</p>
-
-<ul>
- <li><a href="https://developer.mozilla.org/zh-CN/docs/tag/ECMAScript" rel="nofollow, noindex">ECMAScript</a> 2017</li>
- <li>coming soon ...</li>
- <li>https://www.youtube.com/watch?v=s-G_RZ4RJLU</li>
-</ul>
-
-<p> </p>
-
-<h2 id="sect1"> </h2>
diff --git a/files/zh-cn/web/javascript/reference/functions/arguments/caller/index.html b/files/zh-cn/web/javascript/reference/functions/arguments/caller/index.html
deleted file mode 100644
index 13128ec962..0000000000
--- a/files/zh-cn/web/javascript/reference/functions/arguments/caller/index.html
+++ /dev/null
@@ -1,47 +0,0 @@
----
-title: caller
-slug: Web/JavaScript/Reference/Functions/arguments/caller
-translation_of: Archive/Web/JavaScript/arguments.caller
----
-<p>{{jsSidebar("Functions")}}</p>
-
-<p><code><font face="Open Sans, Arial, sans-serif">废弃的 </font><strong>arguments.caller</strong></code> 属性原先用在函数执行的时候调用自身。本属性已被移除且不再有用。</p>
-
-<h2 id="描述">描述</h2>
-
-<p><code>arguments.caller 已经不可使用了,但是你还可以使用</code> {{jsxref("Function.caller")}}。</p>
-
-<pre>function whoCalled() {
- if (whoCalled.caller == null)
- console.log('I was called from the global scope.');
- else
- console.log(whoCalled.caller + ' called me!');
-}
-</pre>
-
-<h3 id="Examples" name="Examples">示例</h3>
-
-<p>下例演示了<code>arguments.caller</code>属性的作用.</p>
-
-<pre class="brush: js example-bad">function whoCalled() {
-   if (arguments.caller == null)
-      console.log('该函数在全局作用域内被调用.');
-   else
-      console.log(arguments.caller + '调用了我!');
-}</pre>
-
-<h2 id="规范">规范</h2>
-
-<p>无相关标准。JavaScript 1.1 实现,{{bug(7224)}} 移除 caller,因为潜在的不安全性。</p>
-
-<h2 id="浏览器支持">浏览器支持</h2>
-
-
-
-<p>{{Compat("javascript.functions.arguments.caller")}}</p>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li>{{jsxref("Function")}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/observe/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/observe/index.html
deleted file mode 100644
index 7c2dcc8474..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/array/observe/index.html
+++ /dev/null
@@ -1,92 +0,0 @@
----
-title: Array.observe()
-slug: Web/JavaScript/Reference/Global_Objects/Array/observe
-tags:
- - JavaScript
- - 实验性
- - 数组
- - 方法
- - 过时的
-translation_of: Archive/Web/JavaScript/Array.observe
----
-<div>{{JSRef}}{{obsolete_header}}</div>
-
-<p><strong>Array.observe()</strong> 方法用于异步监视数组发生的变化,类似于针对对象的 {{jsxref("Object.observe()")}} 。当数组的值发生变化时,它按发生顺序提供了一个变化流。与 <code>Object.observe()</code> 类似,它由如下可接受的变化类型列表<code>["add"、"update"、"delete"、"splice"]</code>触发。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code>Array.observe(<var>arr</var>, <var>callback</var>)</code></pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>arr</code></dt>
- <dd>用于被监视的数组</dd>
- <dt><code>callback</code></dt>
- <dd>每当数组发生变化时,使用如下参数调用该函数:
- <dl>
- <dt><code>changes</code></dt>
- <dd>用于表示变化的对象数组。每个变化对象的属性如下:
- <ul>
- <li><strong><code>name</code></strong>: 变化的属性名。</li>
- <li><strong><code>object</code></strong>: 变化后的数组。</li>
- <li><strong><code>type</code></strong>: 用于表示变化类型的字符串。<code>其取值为"add"、</code><code>"update"、</code><code>"delete"</code>或 <code>"splice"</code>之一。</li>
- <li><strong><code>oldValue</code></strong>: 仅用于<code>"update"</code>和<code>"delete"类型。变化</code>之前的取值。</li>
- <li><strong><code>index</code></strong>: <code>仅用于"splice"类型。</code>变化发生所在索引。</li>
- <li><strong><code>removed</code></strong>: 仅用于<code>"splice"类型。</code>被删除元素组成的数组。</li>
- <li><strong><code>addedCount</code></strong>: 仅用于<code>"splice"</code>类型。被添加的元素数量。</li>
- </ul>
- </dd>
- </dl>
- </dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p>每次 arr 发生任何变化时,回调函数将被调用,调用参数为所有变化按发生顺序组成的数组。</p>
-
-<div class="note">
-<p>通过Array方法如<a href="https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/pop"> Array.prototype.pop( )</a> 触发的变化将被报告成"<em>splice</em>"变化,长度不变但索引赋值发生变化的将被报告成"update"变化。</p>
-</div>
-
-<h2 id="示例">示例</h2>
-
-<h3 id="Example_Logging_different_change_types">Example: Logging different change types</h3>
-
-<pre class="brush: js">var arr = ['a', 'b', 'c'];
-
-Array.observe(arr, function(changes) {
- console.log(changes);
-});
-
-arr[1] = 'B';
-// [{type: 'update', object: &lt;arr&gt;, name: '1', oldValue: 'b'}]
-
-arr[3] = 'd';
-// [{type: 'splice', object: &lt;arr&gt;, index: 3, removed: [], addedCount: 1}]
-
-arr.splice(1, 2, 'beta', 'gamma', 'delta');
-// [{type: 'splice', object: &lt;arr&gt;, index: 1, removed: ['B', 'c'], addedCount: 3}]
-</pre>
-
-<h2 id="Specifications" name="Specifications">标准规范</h2>
-
-<p><a href="https://github.com/arv/ecmascript-object-observe">Strawman proposal specification</a>.</p>
-
-<h2 id="Browser_compatibility" name="Browser_compatibility">浏览器支持</h2>
-
-<div>
-<div>
-
-
-<p>{{Compat("javascript.builtins.Array.observe")}}</p>
-</div>
-</div>
-
-<h2 id="See_also" name="See_also">相关内容</h2>
-
-<ul>
- <li>{{jsxref("Array.unobserve()")}} {{experimental_inline}}</li>
- <li>{{jsxref("Object.observe()")}} {{experimental_inline}}</li>
- <li><a href="https://stackoverflow.com/q/29269057/778272">Under what condition would Array.observe's “add” event trigger?</a></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/array/unobserve/index.html b/files/zh-cn/web/javascript/reference/global_objects/array/unobserve/index.html
deleted file mode 100644
index 90678a1081..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/array/unobserve/index.html
+++ /dev/null
@@ -1,86 +0,0 @@
----
-title: Array.unobserve()
-slug: Web/JavaScript/Reference/Global_Objects/Array/unobserve
-translation_of: Archive/Web/JavaScript/Array.unobserve
----
-<div>{{JSRef}} {{non-standard_header}}</div>
-
-<p>Array<strong>.unobserve()方法用来移除</strong>{{jsxref("Array.observe()")}}设置的所有观察者。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code>Array.unobserve(<var>arr</var>, <var>callback</var>)</code></pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>arr</code></dt>
- <dd>停止观察的数组。</dd>
- <dt> </dt>
- <dt><code>callback回调</code></dt>
- <dd>需要停止的array <strong>arr</strong>每次改变都会调用的函数引用。</dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p><code>Array.unobserve()</code> 方法因为要移除观察者,所以应该在{{jsxref("Array.observe()")}}调用后调用。</p>
-
-<p>回调函数应该是一个函数的引用并且不能是匿名函数, 因为这个函数需要用来移除前面的观察者, 如果用匿名函数是没有用的,将不能移除任何观察者。</p>
-
-<h2 id="例子">例子</h2>
-
-<h3 id="停止观察一个数组">停止观察一个数组</h3>
-
-<pre class="brush: js">var arr = [1, 2, 3];
-
-var observer = function(changes) {
-  console.log(changes);
-}
-
-Array.observe(arr, observer);
-​
-arr.push(4);
-// [{type: "splice", object: &lt;arr&gt;, index: 3, removed:[], addedCount: 1}]
-
-Array.unobserve(arr, observer);
-
-arr.pop();
-// The callback wasn't called</pre>
-
-<h3 id="使用匿名函数">使用匿名函数</h3>
-
-<pre class="brush: js">var persons = ['Khalid', 'Ahmed', 'Mohammed'];
-
-Array.observe(persons, function (changes) {
-  console.log(changes);
-});
-
-persons.shift();
-// [{type: "splice", object: &lt;arr&gt;, index: 0, removed: [ "Khalid" ], addedCount: 0 }]
-
-Array.unobserve(persons, function (changes) {
-  console.log(changes);
-});
-
-persons.push('Abdullah');
-// [{type: "splice", object: &lt;arr&gt;, index: 2, removed: [], addedCount: 1 }]
-// The callback will always be called
-</pre>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<div>
-<div>
-
-
-<p>{{Compat("javascript.builtins.Array.unobserve")}}</p>
-</div>
-</div>
-
-<h2 id="相关内容">相关内容</h2>
-
-<ul>
- <li>{{jsxref("Array.observe()")}} {{non-standard_inline}}</li>
- <li>{{jsxref("Object.observe()")}} {{non-standard_inline}}</li>
- <li>{{jsxref("Object.unobserve()")}} {{non-standard_inline}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/arraybuffer/transfer/index.html b/files/zh-cn/web/javascript/reference/global_objects/arraybuffer/transfer/index.html
deleted file mode 100644
index cf3185f637..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/arraybuffer/transfer/index.html
+++ /dev/null
@@ -1,116 +0,0 @@
----
-title: ArrayBuffer.transfer()
-slug: Web/JavaScript/Reference/Global_Objects/ArrayBuffer/transfer
-translation_of: Archive/Web/JavaScript/ArrayBuffer.transfer
----
-<div>{{JSRef}} {{SeeCompatTable}}</div>
-
-<p> 静态<code><strong>ArrayBuf</strong></code><strong>fer.transfer()</strong> 方法返回一个新的ArrayBuffer, 其内容取自oldBuffer的数据,并且根据 newByteLength 的大小来对数据进行截取或者以0扩展。 如果 newByteLength 未定义,则使用 oldBuffer 的byteLength。这个操作使得 oldBuffer 处于被移除的状态。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox">ArrayBuffer.transfer(oldBuffer [, newByteLength]);</pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>oldBuffer</code></dt>
- <dd> 要转移的{{jsxref("ArrayBuffer")}}对象。</dd>
- <dt>newByteLength</dt>
- <dd>新 <code>ArrayBuffer</code> 对象的字节长度。</dd>
-</dl>
-
-<h3 id="返回值">返回值</h3>
-
-<p>一个新的ArrayBuffer对象。</p>
-
-<h2 id="描述">描述</h2>
-
-<p><code>ArrayBuffer.transfer()</code>方法允许你增长和移除 <code>ArrayBuffer</code> 对象。不需复制就能增长一个ArrayBuffer的功能,对于大的缓冲区来说,有速度优势 (类似realloc) 。当释放底层内存时,移除ArrayBuffer的功能给开发者提供了显式控制。这避免了必须丢弃所有引用和等待垃圾回收。</p>
-
-<h2 id="示例">示例</h2>
-
-<pre class="brush: js">var buf1 = new ArrayBuffer(40);
-new Int32Array(buf1)[0] = 42;
-
-var buf2 = ArrayBuffer.transfer(buf1, 80);
-buf1.byteLength; // 0 but if you use the polyfill then the value is still 40
-buf2.byteLength; // 80
-new Int32Array(buf2)[0]; // 42
-
-var buf3 = ArrayBuffer.transfer(buf2, 0);
-buf2.byteLength; // 0 but if you use the polyfill then the value is still 80
-buf3.byteLength; // 0
-</pre>
-
-<h2 id="Polyfill">Polyfill</h2>
-
-<p>You can partially work around this by inserting the following code at the beginning of your scripts, allowing use of much of the functionality of transfer<font face="Consolas, Liberation Mono, Courier, monospace">()</font> in implementations that do not natively support it. This is not the exact equivalent of this API, but this function transfers data from one ArrayBuffer to another ArrayBuffer.</p>
-
-<pre>if(!ArrayBuffer.transfer) {
- ArrayBuffer.transfer = function (source, length) {
- source = Object(source);
- var dest = new ArrayBuffer(length);
- if(!(source instanceof ArrayBuffer) || !(dest instanceof ArrayBuffer)) {
- throw new TypeError("Source and destination must be ArrayBuffer instances");
- }
- if(dest.byteLength &gt;= source.byteLength) {
- var nextOffset = 0;
- var leftBytes = source.byteLength;
- var wordSizes = [8, 4, 2, 1];
- wordSizes.forEach(function (_wordSize_) {
- if (leftBytes &gt;= _wordSize_) {
- var done = transferWith(_wordSize_, source, dest, nextOffset, leftBytes);
- nextOffset = done.nextOffset;
- leftBytes = done.leftBytes;
- }
- });
- }
- return dest;
- function transferWith(wordSize, source, dest, nextOffset, leftBytes) {
- var ViewClass = Uint8Array;
- switch (wordSize) {
- case 8:
- ViewClass = Float64Array;
- break;
- case 4:
- ViewClass = Float32Array;
- break;
- case 2:
- ViewClass = Uint16Array;
- break;
- case 1:
- ViewClass = Uint8Array;
- break;
- default:
- ViewClass = Uint8Array;
- break;
- }
- var view_source = new ViewClass(source, nextOffset, Math.trunc(leftBytes / wordSize));
- var view_dest = new ViewClass(dest, nextOffset, Math.trunc(leftBytes / wordSize));
- for(var i=0; i&lt;view_dest.length; i++) {
- view_dest[i] = view_source[i];
- }
- return {
- nextOffset : view_source.byteOffset + view_source.byteLength,
- leftBytes : source.byteLength - (view_source.byteOffset + view_source.byteLength)
- }
- }
- };
-}</pre>
-
-<h2 id="规范">规范</h2>
-
-<p>Not part of any current specification draft document, but <a href="https://esdiscuss.org/topic/sept-23-2014-meeting-notes">has been</a> <a href="https://gist.github.com/lukewagner/2735af7eea411e18cf20">proposed</a> for a future ECMA-262 edition.</p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-
-
-<p>{{Compat("javascript.builtins.ArrayBuffer.transfer")}}</p>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li><a href="/en-US/docs/Web/JavaScript/Typed_arrays" title="en/JavaScript typed arrays">JavaScript typed arrays</a></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/date/tolocaleformat/index.html b/files/zh-cn/web/javascript/reference/global_objects/date/tolocaleformat/index.html
deleted file mode 100644
index 40c72fc476..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/date/tolocaleformat/index.html
+++ /dev/null
@@ -1,73 +0,0 @@
----
-title: Date.prototype.toLocaleFormat()
-slug: Web/JavaScript/Reference/Global_Objects/Date/toLocaleFormat
-tags:
- - Date
- - 非标准
-translation_of: Archive/Web/JavaScript/Date.toLocaleFormat
----
-<div>{{JSRef}} {{non-standard_header}}</div>
-
-<p>非标准方法 <strong><code>toLocaleFormat()</code></strong> 按特定的格式将一个日期转换成一个字符串。 {{jsxref("Global_Objects/DateTimeFormat", "Intl.DateTimeFormat")}} 是符合标准的格式化日期的替代方法。另见更新的(newer)版本的 {{jsxref("Date.prototype.toLocaleDateString()")}}方法.</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code><var>dateObj</var>.toLocaleFormat(<var>formatString</var>)</code></pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>formatString</code></dt>
- <dd>与C语言中的 <a class="external" href="http://www.opengroup.org/onlinepubs/007908799/xsh/strftime.html"><code>strftime()</code></a> 方法的参数形式要求相同的格式字符串。</dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p><code>toLocaleFormat()</code> 方法通过格式化生成的日期或时间提供了更好的软件层面的控制(provides greater software control over the formatting of the generated date and/or time)。用操作系统的地点来月份和星期几的名称本地化。然而,However, ordering of the day and month and other localization tasks are not handled automatically since you have control over the order in which they occur. You should take care that the format string is localized properly according to the user's system settings. Be aware that the locale used is not necessarily the same as the locale of the browser.</p>
-
-<p>Extension and XULRunner developers should know that just loading the format string from a <code>.dtd</code> or <code>.properties</code> file using a <code>chrome://<em>somedomain</em>/locale/<em>somefile.ext</em></code> URI should be <strong>avoided</strong>, as the <code>.dtd</code>/<code>.properties</code> file and the <code>toLocaleFormat()</code> method does not not necessarily use the same locale, which could result in odd looking or even ambiguous or unreadable dates.</p>
-
-<p>Also note that the behavior of the used locale depends on the platform, and the user might customize the locale used, so using the system locale the choose the format string might in some cases not even be adequate. You might consider using some of the more general <code>toLocale*</code> methods of the {{jsxref("Global_Objects/Date", "Date")}} object or doing your own custom localization of the date to be displayed using some of the <code>get*</code> methods of the {{jsxref("Global_Objects/Date", "Date")}} object instead of using this method.</p>
-
-<h2 id="示例">示例</h2>
-
-<h3 id="Using_toLocaleFormat()">Using <code>toLocaleFormat()</code></h3>
-
-<pre class="brush: js">var today = new Date();
-var date = today.toLocaleFormat('%A, %B %e, %Y'); // Bad example
-</pre>
-
-<p>In this example, <code>toLocaleFormat()</code> returns a string such as "Wednesday, October 3, 2007". Note that the format string in this example is not properly localized, which will result in the problems described above.</p>
-
-<h2 id="腻子(Polyfill)">腻子(Polyfill)</h2>
-
-<p>When using the <a href="https://github.com/abritinthebay/datejs/wiki/Format-Specifiers">DateJS</a> library you can polyfill {{jsxref("Date.prototype.toLocaleDateString()")}} like this:</p>
-
-<pre class="brush: js">if (!Date.prototype.toLocaleFormat) {
- (function() {
- Date.prototype.toLocaleFormat = function(formatString) {
- return this.format(formatString);
- };
- }());
-}</pre>
-
-<h2 id="标准">标准</h2>
-
-<p>不属于任何标准。在JavaScript 1.6中被实现。</p>
-
-<h2 id="兼容性">兼容性</h2>
-
-<div>
-<p class="hidden">The compatibility table in this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</p>
-
-<p>{{Compat("javascript.builtins.Date.toLocaleFormat")}}</p>
-</div>
-
-<h2 id="另见">另见</h2>
-
-<ul>
- <li>{{jsxref("Global_Objects/DateTimeFormat", "Intl.DateTimeFormat")}}</li>
- <li>{{jsxref("Date.prototype.toLocaleString()")}}</li>
- <li>{{jsxref("Date.prototype.toLocaleDateString()")}}</li>
- <li>{{jsxref("Date.prototype.toLocaleTimeString()")}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/function/arity/index.html b/files/zh-cn/web/javascript/reference/global_objects/function/arity/index.html
deleted file mode 100644
index d8e8668ca2..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/function/arity/index.html
+++ /dev/null
@@ -1,16 +0,0 @@
----
-title: Function.arity
-slug: Web/JavaScript/Reference/Global_Objects/Function/arity
-translation_of: Archive/Web/JavaScript/Function.arity
----
-<div>
-<div>{{JSRef("Global_Objects", "Function")}} {{obsolete_header}}</div>
-</div>
-
-<h2 id="Summary" name="Summary">概述</h2>
-
-<p>返回一个函数的形参数量.</p>
-
-<h2 id="Description" name="Description">描述</h2>
-
-<p class="note"><code>arity</code>是一个古老的已经没有浏览器支持的属性,你应该使用<code><a href="/zh-CN/docs/JavaScript/Reference/Global_Objects/Function/length" title="JavaScript/Reference/Global_Objects/Function/length">Function.prototype.length</a></code>属性来代替.</p>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/function/isgenerator/index.html b/files/zh-cn/web/javascript/reference/global_objects/function/isgenerator/index.html
deleted file mode 100644
index f377f0a210..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/function/isgenerator/index.html
+++ /dev/null
@@ -1,40 +0,0 @@
----
-title: Function.prototype.isGenerator()
-slug: Web/JavaScript/Reference/Global_Objects/Function/isGenerator
-translation_of: Archive/Web/JavaScript/Function.isGenerator
----
-<div>{{JSRef("Global_Objects", "Function")}} {{non-standard_header}}</div>
-
-<h2 id="概述">概述</h2>
-
-<p>判断一个函数是否是一个<a href="/zh-cn/JavaScript/Guide/Iterators_and_Generators#Generators.3a_a_better_way_to_build_Iterators" title="zh-cn/Core JavaScript 1.5 Guide/Iterators and Generators#Generators.3a a better way to build Iterators">生成器</a>.</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code><var>fun</var>.isGenerator()</code></pre>
-
-<h2 id="描述">描述</h2>
-
-<p>该方法用来判断一个函数是否是一个<a href="/zh-cn/JavaScript/Guide/Iterators_and_Generators#Generators.3a_a_better_way_to_build_Iterators" title="zh-cn/Core JavaScript 1.5 Guide/Iterators and Generators#Generators.3a a better way to build Iterators">生成器</a>.</p>
-
-<h2 id="例子">例子</h2>
-
-<pre class="brush: js">function f() {}
-function* g() {
-  yield 42;
-}
-console.log("f.isGenerator() = " + f.isGenerator());
-console.log("g.isGenerator() = " + g.isGenerator());
-</pre>
-
-<p>上面代码的输出结果为</p>
-
-<pre>f.isGenerator() = false
-g.isGenerator() = true
-</pre>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li><a href="/zh-cn/JavaScript/Guide/Iterators_and_Generators" title="zh-cn/Core JavaScript 1.5 Guide/Iterators and Generators">迭代器和生成器</a></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/iterator/index.html b/files/zh-cn/web/javascript/reference/global_objects/iterator/index.html
deleted file mode 100644
index 775c8d60d6..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/iterator/index.html
+++ /dev/null
@@ -1,188 +0,0 @@
----
-title: Iterator
-slug: Web/JavaScript/Reference/Global_Objects/Iterator
-tags:
- - Deprecated
-translation_of: Archive/Web/Iterator
----
-<div>{{jsSidebar("Objects")}}</div>
-
-<div class="warning"><strong>非标准。</strong> <code><strong>Iterator</strong></code> 函数是一个 SpiderMonkey 专有特性,并且会在某一时刻被删除。为将来使用的话,请考虑使用 {{jsxref("Statements/for...of", "for...of")}} 循环和  <a href="/zh-CN/docs/Web/JavaScript/Guide/The_Iterator_protocol">迭代协议</a>。</div>
-
-<p><code><strong>Iterator</strong></code> 函数返回一个对象,它实现了遗留的迭代协议,并且迭代了一个对象的可枚举属性。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox">Iterator(<var>object</var>, [keyOnly])</pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>object</code></dt>
- <dd>要迭代属性的对象。</dd>
- <dt><code>keyOnly</code></dt>
- <dd> 如果<code>keyOnly</code>是真值,<code>Iterator.prototype.next</code> <code>只返回property_name</code> 。</dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p><code>返回迭代了object的Iterator</code> 实例。如果<code>keyOnly</code>为假值,则<code>Iterator</code> 实例返回每次迭代而生成的 <code>[property_name, property_value]</code> 数组,否则,如果<code>keyOnly</code>是真值,则它返回每次迭代的 <code>property_name</code>。如果<code>object</code> 是 <code>Iterator</code> 实例或 {{jsxref("Generator")}} 实例 ,则它返回 <code>object</code> 自身。</p>
-
-<h2 id="属性">属性</h2>
-
-<dl>
- <dt><code><strong>Iterator.prototype[@@iterator]</strong></code></dt>
- <dd>返回一个函数,它返回符合{{jsxref("Iteration_protocols", "迭代协议", "", 1)}}的迭代对象。</dd>
-</dl>
-
-<h2 id="方法">方法</h2>
-
-<dl>
- <dt><code><strong>Iterator.prototype.next</strong></code></dt>
- <dd>返回<code>[property_name, property_value]</code> 格式或<code>property_name</code> 的下一项。 如果没有更多项,抛出 <code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/StopIteration">StopIteration</a></code> 。</dd>
-</dl>
-
-<h2 id="示例">示例</h2>
-
-<h3 id="迭代一个对象的属性">迭代一个对象的属性</h3>
-
-<pre class="brush: js">var a = {
- x: 10,
- y: 20,
-};
-var iter = Iterator(a);
-console.log(iter.next()); // ["x", 10]
-console.log(iter.next()); // ["y", 20]
-console.log(iter.next()); // throws StopIteration
-</pre>
-
-<h3 id="使用遗留的解构for-in迭代对象的属性">使用遗留的<code>解构for-in迭代对象的属性</code></h3>
-
-<pre class="brush: js">var a = {
- x: 10,
- y: 20,
-};
-
-for (var [name, value] in Iterator(a)) {
- console.log(name, value); // x 10
- // y 20
-}
-</pre>
-
-<h3 id="使用for-of迭代">使用<code>for-of迭代</code></h3>
-
-<pre class="brush: js">var a = {
- x: 10,
- y: 20,
-};
-
-for (var [name, value] of Iterator(a)) { // @@iterator is used
- console.log(name, value); // x 10
- // y 20
-}
-</pre>
-
-<h3 id="迭代属性名">迭代属性名</h3>
-
-<pre class="brush: js">var a = {
- x: 10,
- y: 20,
-};
-
-for (var name in Iterator(a, true)) {
- console.log(name); // x
- // y
-}
-</pre>
-
-<h3 id="传入_Generator_实例">传入 Generator 实例</h3>
-
-<pre class="brush: js">function* f() {
- yield 'a';
- yield 'b';
-}
-var g = f();
-
-console.log(g == Iterator(g)); // true
-
-for (var v in Iterator(g)) {
- console.log(v); // a
- // b
-}
-</pre>
-
-<h3 id="传入_Iterator_实例">传入 Iterator 实例</h3>
-
-<pre class="brush: js">var a = {
- x: 10,
- y: 20,
-};
-
-var i = Iterator(a);
-
-console.log(i == Iterator(i)); // true
-</pre>
-
-<h2 id="规范">规范</h2>
-
-<p>非标准。不是目前任何标准文档的一部分。</p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<p>{{CompatibilityTable}}</p>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatVersionUnknown}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatVersionUnknown}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li><a href="/zh-CN/docs/JavaScript/Guide/Iterators_and_Generators" title="/en-US/docs/JavaScript/Guide/Iterators_and_Generators">Iterators and Generators</a></li>
- <li><code><a href="/en-US/docs/Web/JavaScript/Reference/Global_Objects/StopIteration">StopIteration</a></code><br>
-  </li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/number/tointeger/index.html b/files/zh-cn/web/javascript/reference/global_objects/number/tointeger/index.html
deleted file mode 100644
index 24abe2125e..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/number/tointeger/index.html
+++ /dev/null
@@ -1,97 +0,0 @@
----
-title: Number.toInteger()
-slug: Web/JavaScript/Reference/Global_Objects/Number/toInteger
-translation_of: Archive/Web/JavaScript/Number.toInteger
----
-<div>{{JSRef("Global_Objects", "Number")}} {{obsolete_header("33")}} {{non-standard_header}}</div>
-
-<h2 id="Summary" name="Summary">概览</h2>
-
-<p><strong><code>Number.toInteger()</code></strong> 用来将参数转换成整数,但该方法的实现已被移除.</p>
-
-<p>如果参数是 {{jsxref("Global_Objects/NaN", "NaN")}}, {{jsxref("Global_Objects/null", "null")}} 或 {{jsxref("Global_Objects/undefined", "undefined")}}, 会返回0 . 如果参数值是true返回1,false的话返回<span style="line-height: 19.0909080505371px;">0</span>.</p>
-
-<h2 id="Syntax" name="Syntax">语法</h2>
-
-<pre class="syntaxbox"><code>Number.toInteger(<var>number</var>)</code></pre>
-
-<h3 id="Parameters" name="Parameters">参数</h3>
-
-<dl>
- <dt><code>number</code></dt>
- <dd>将被转换成整数的参数.</dd>
-</dl>
-
-<h2 id="Examples" name="Examples">示例</h2>
-
-<h3 id="Example:_Using_toInteger" name="Example:_Using_toInteger">例子: 使用 <code>toInteger()方法</code></h3>
-
-<pre class="brush: js">Number.toInteger(0.1); // 0
-Number.toInteger(1); // 1
-Number.toInteger(Math.PI); // 3
-Number.toInteger(null); // 0
-</pre>
-
-<h2 id="Specifications" name="Specifications">Specifications</h2>
-
-<ul>
- <li><code>Number.toInteger()</code> 是<span style="line-height: 19.0909080505371px;">ECMAScript 6 起草的一部分</span>, 但在2013-8-23的Draft Rev 17 中被移除 .</li>
-</ul>
-
-<h2 id="Browser_compatibility" name="Browser_compatibility">浏览器兼容性</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>Firefox 16 to 32</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>Firefox 16 to 32</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="See_also" name="See_also">See also</h2>
-
-<ul>
- <li>归属于 {{jsxref("Global_Objects/Number", "Number")}} 对象.</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/count/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/count/index.html
deleted file mode 100644
index c7dfb12f2b..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/object/count/index.html
+++ /dev/null
@@ -1,88 +0,0 @@
----
-title: Object.prototype.__count__
-slug: Web/JavaScript/Reference/Global_Objects/Object/count
-tags:
- - JavaScript
- - Object
- - Obsolete
- - Property
- - Prototype
-translation_of: Archive/Web/JavaScript/Object.count
----
-<div>{{JSRef}} {{obsolete_header("2")}}</div>
-
-<p> <strong><code>__count__</code></strong> 属性曾经用来存放对象的可枚举的属性的个数,但是已经被废除。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code><var>obj</var>.__count__</code></pre>
-
-<h2 id="示例">示例</h2>
-
-<pre class="brush: js">{ 1: 1 }.__count__ // 1
-[].__count__ // 0
-[1].__count__ // 1
-[1, /* hole */, 2, 3].__count__ // 3
-</pre>
-
-<h2 id="详细说明">详细说明</h2>
-
-<p>无需详细说明</p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="更多请参看">更多请参看</h2>
-
-<ul>
- <li><a class="external" href="http://whereswalden.com/2010/04/06/more-changes-coming-to-spidermonkey-the-magical-__count__-property-of-objects-is-being-removed/">[Blog post] More changes coming to SpiderMonkey: the magical __count__ property is being removed</a></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/eval/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/eval/index.html
deleted file mode 100644
index e823c314a8..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/object/eval/index.html
+++ /dev/null
@@ -1,85 +0,0 @@
----
-title: Object.prototype.eval()
-slug: Web/JavaScript/Reference/Global_Objects/Object/eval
-translation_of: Archive/Web/JavaScript/Object.eval
----
-<div>{{JSRef}} {{obsolete_header}}</div>
-
-<p><code><strong>Object.eval()</strong></code> 方法用于在对象的上下文中对 JavaScript 代码字符串求值,但该方法已被移除。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code><var>obj</var>.eval(<var>string</var>)</code></pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>string</code></dt>
- <dd>包含任意 JavaScript 表达式、语句或一组语句的字符串。表达式中可包含已有对象的变量与属性。</dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p><code>eval</code> 方法已从对象方法中移除。可使用全局 {{jsxref("Global_Objects/eval", "eval()")}} 函数替代该方法。</p>
-
-<h2 id="规范">规范</h2>
-
-<p>暂无规范</p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li>{{jsxref("Global_Objects/eval", "eval()")}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/getnotifier/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/getnotifier/index.html
deleted file mode 100644
index fac0573de3..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/object/getnotifier/index.html
+++ /dev/null
@@ -1,93 +0,0 @@
----
-title: Object.getNotifier()
-slug: Web/JavaScript/Reference/Global_Objects/Object/getNotifier
-translation_of: Archive/Web/JavaScript/Object.getNotifier
----
-<div>{{JSRef}} {{obsolete_header}}</div>
-
-<p><strong><code>Object.getNotifer()</code></strong> 方法用于创建可人工触发 change 事件的对象,但该方法在浏览器中已被废弃。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox">Object.getNotifier(<em>obj</em>)</pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>obj</code></dt>
- <dd>获取通知的对象。</dd>
-</dl>
-
-<h3 id="返回值">返回值</h3>
-
-<p>与传入对象相关联的通知对象。</p>
-
-<h2 id="描述">描述</h2>
-
-<p><code><font face="Open Sans, Arial, sans-serif">通知对象可触发 </font>Object.observe() 所观察到的人工变动。</code></p>
-
-<h2 id="规范">规范</h2>
-
-<p><a href="https://github.com/arv/ecmascript-object-observe">Strawman proposal specification.</a></p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatChrome("36")}} [1]</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatOpera("23")}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatChrome("36")}} [1]</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatOpera("23")}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<p>[1] Deprecated in Chrome 49.</p>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li>{{jsxref("Object.observe()")}} {{obsolete_inline}}</li>
- <li>{{jsxref("Object.unobserve()")}} {{obsolete_inline}}</li>
- <li>{{jsxref("Array.observe()")}} {{obsolete_inline}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/nosuchmethod/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/nosuchmethod/index.html
deleted file mode 100644
index 7b54198c19..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/object/nosuchmethod/index.html
+++ /dev/null
@@ -1,208 +0,0 @@
----
-title: Object.prototype.__noSuchMethod__
-slug: Web/JavaScript/Reference/Global_Objects/Object/noSuchMethod
-translation_of: Archive/Web/JavaScript/Object.noSuchMethod
----
-<div>{{JSRef}} {{obsolete_header}}</div>
-
-<p><strong><code>__noSuchMethod__</code></strong> 属性曾经是指当调用某个对象里不存在的方法时即将被执行的函数,但是现在这个函数已经不可用。</p>
-
-<p><code><font face="Open Sans, Arial, sans-serif">在</font><strong>__noSuchMethod__</strong></code> 属性被移除之后,ECMAScript 2015 (ES6) 规范转而采用 {{jsxref("Proxy")}} 对象, 可以实现下面的效果(以及更多)。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code><var>obj</var>.__noSuchMethod__ = <var>fun</var></code></pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>fun</code></dt>
- <dd>函数形式如下:</dd>
- <dd>
- <pre class="brush: js"><code>function (<var>id</var>, <var>args</var>) { . . . }</code></pre>
-
- <dl>
- <dt><code>id</code></dt>
- <dd>调用的不存在的方法名</dd>
- <dt><code>args</code></dt>
- <dd>传递给该方法的参数数组</dd>
- </dl>
- </dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p>默认情况喜爱,试图调用对象上不存在的方法其结果是在{{jsxref("TypeError")}}上抛出异常,这种行为可以在</p>
-
-<p>By default, an attempt to call a method that doesn't exist on an object results in a {{jsxref("TypeError")}} being thrown. This behavior can be circumvented by defining a function at that object's <code>__noSuchMethod__</code> member. The function takes two arguments, the first is the name of the method attempted and the second is an array of the arguments that were passed in the method call. The second argument is an actual array (that is, it inherits through the {{jsxref("Array.prototype")}} chain) and not the array-like <a href="/en-US/docs/Web/JavaScript/Reference/Functions_and_function_scope/arguments" title="JavaScript/Reference/Functions/arguments">arguments object</a>.</p>
-
-<p>If this method cannot be called, either as if <code>undefined</code> by default, if deleted, or if manually set to a non-function, the JavaScript engine will revert to throwing <code>TypeError</code>s.</p>
-
-<h2 id="Examples">Examples</h2>
-
-<h3 id="Simple_test_of___noSuchMethod__">Simple test of <code>__noSuchMethod__</code></h3>
-
-<pre class="brush: js">var o = {
- __noSuchMethod__: function(id, args) {
- console.log(id, '(' + args.join(', ') + ')');
- }
-};
-
-o.foo(1, 2, 3);
-o.bar(4, 5);
-o.baz();
-
-// Output
-// foo (1, 2, 3)
-// bar (4, 5)
-// baz ()
-</pre>
-
-<h3 id="Using___noSuchMethod___to_simulate_multiple_inheritance">Using <code>__noSuchMethod__</code> to simulate multiple inheritance</h3>
-
-<p>An example of code that implements a primitive form of multiple inheritance is shown below.</p>
-
-<pre class="brush: js">// Doesn't work with multiple inheritance objects as parents
-function noMethod(name, args) {
- var parents = this.__parents_;
-
- // Go through all parents
- for (var i = 0; i &lt; parents.length; i++) {
- // If we find a function on the parent, we call it
- if (typeof parents[i][name] == "function") {
- return parents[i][name].apply(this, args);
- }
- }
-
- // If we get here, the method hasn't been found
- throw new TypeError;
-}
-
-// Used to add a parent for multiple inheritance
-function addParent(obj, parent) {
- // If the object isn't initialized, initialize it
- if (!obj.__parents_) {
- obj.__parents_ = [];
- obj.__noSuchMethod__ = noMethod;
- }
-
- // Add the parent
- obj.__parents_.push(parent);
-}
-</pre>
-
-<p>An example of using this idea is shown below.</p>
-
-<pre class="brush: js">// Example base class 1
-function NamedThing(name){
- this.name=name;
-}
-
-NamedThing.prototype = {
- getName: function() { return this.name; },
- setName: function(newName) { this.name = newName; }
-}
-
-// Example base class 2
-function AgedThing(age) {
- this.age = age;
-}
-
-AgedThing.prototype = {
- getAge: function() { return this.age; },
- setAge: function(age) { this.age = age; }
-}
-
-// Child class. inherits from NamedThing and AgedThing
-// as well as defining address
-function Person(name, age, address){
- addParent(this, NamedThing.prototype);
- NamedThing.call(this, name);
- addParent(this, AgedThing.prototype);
- AgedThing.call(this, age);
- this.address = address;
-}
-
-Person.prototype = {
- getAddr: function() { return this.address; },
- setAddr: function(addr) { this.address = addr; }
-}
-
-var bob = new Person("bob", 25, "New York");
-
-console.log("getAge is " + (("getAge" in bob) ? "in" : "not in") + " bob");
-// getAge is not in bob
-
-console.log("bob's age is: " + bob.getAge());
-// bob's age is: 25
-
-console.log("getName is " + (("getName" in bob) ? "in" : "not in") + " bob");
-// getName is not in bob
-
-console.log("bob's name is: " + bob.getName());
-// bob's name is: bob
-
-console.log("getAddr is " + (("getAddr" in bob) ? "in" : "not in") + " bob");
-// getAddr is in bob
-
-console.log("bob's address is: " + bob.getAddr());
-// bob's address is: New York
-</pre>
-
-<h2 id="Specifications">Specifications</h2>
-
-<p>Not part of any specifications. This feature has been removed, see {{bug(683218)}}.</p>
-
-<h2 id="Browser_compatibility">Browser compatibility</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}} [1]</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}} [1]</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<p>[1] This feature was implemented until version 43.</p>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/observe/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/observe/index.html
deleted file mode 100644
index e37cc6ab6f..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/object/observe/index.html
+++ /dev/null
@@ -1,160 +0,0 @@
----
-title: Object.observe()
-slug: Web/JavaScript/Reference/Global_Objects/Object/observe
-tags:
- - ECMAScript7
- - Experimental
- - JavaScript
- - Method
- - Object
- - observe
-translation_of: Archive/Web/JavaScript/Object.observe
----
-<div>{{JSRef}} {{obsolete_header}}</div>
-
-<h2 id="概述">概述</h2>
-
-<p><strong><code>Object.observe()</code></strong> 方法用于异步地监视一个对象的修改。当对象属性被修改时,方法的回调函数会提供一个有序的修改流。然而,这个接口已经被废弃并从各浏览器中移除。你可以使用更通用的 {{jsxref("Proxy")}} 对象替代。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code>Object.observe(<var>obj</var>, <var>callback</var></code>[, <var>acceptList</var>])</pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>obj</code></dt>
- <dd>被监控的对象.</dd>
- <dt><code>callback</code></dt>
- <dd>当对象被修改时触发的回调函数,其参数为:
- <dl>
- <dt><code>changes</code></dt>
- <dd>一个数组,其中包含的每一个对象代表一个修改行为。每个修改行为的对象包含:
- <ul>
- <li><strong><code>name</code></strong>: 被修改的属性名称<span style="font-family: consolas,monaco,andale mono,monospace;">。</span></li>
- <li><strong><code>object</code></strong>: 修改后该对象的值<span style="font-family: consolas,monaco,andale mono,monospace;">。</span></li>
- <li><strong><code>type</code></strong>: 表示对该对象做了何种类型的修改,可能的值为<code>"add"</code>, <code>"update"</code>, or <code>"delete"</code><span style="font-family: consolas,monaco,andale mono,monospace;">。</span></li>
- <li><strong><code>oldValue</code></strong>: 对象修改前的值。该值只在<code>"update"<font face="Open Sans, sans-serif">与</font></code><code>"delete"有效。</code></li>
- <li> </li>
- </ul>
- </dd>
- <dt><font face="Consolas">acceptList</font></dt>
- <dd>在给定对象上给定回调中要监视的变化类型列表。如果省略, <code><font face="Courier New">["add", "update", "delete", "reconfigure", "setPrototype", "preventExtensions"]</font></code> 将会被使用。</dd>
- </dl>
- </dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p><code style="font-style: normal;">callback</code> 函数会在<code>对象被改变时被调用,其参数为一个包含所有修改信息的有序的数组对象。</code></p>
-
-<h2 id="例子">例子</h2>
-
-<h3 id="例子_打印出三种不同操作类型的日志">例子: 打印出三种不同操作类型的日志</h3>
-
-<pre class="brush: js">var obj = {
- foo: 0,
- bar: 1
-};
-
-Object.observe(obj, function(changes) {
- console.log(changes);
-});
-
-obj.baz = 2;
-// [{name: 'baz', object: &lt;obj&gt;, type: 'add'}]
-
-obj.foo = 'hello';
-// [{name: 'foo', object: &lt;obj&gt;, type: 'update', oldValue: 0}]
-
-delete obj.baz;
-// [{name: 'baz', object: &lt;obj&gt;, type: 'delete', oldValue: 2}]
-</pre>
-
-<h3 id="例子_数据绑定">例子: 数据绑定</h3>
-
-<pre class="brush: js">// 一个数据模型
-var user = {
- id: 0,
- name: 'Brendan Eich',
- title: 'Mr.'
-};
-
-// 创建用户的greeting
-function updateGreeting() {
- user.greeting = 'Hello, ' + user.title + ' ' + user.name + '!';
-}
-updateGreeting();
-
-Object.observe(user, function(changes) {
- changes.forEach(function(change) {
- // 当name或title属性改变时, 更新greeting
- if (change.name === 'name' || change.name === 'title') {
- updateGreeting();
- }
- });
-});
-</pre>
-
-<h2 id="Specifications" name="Specifications">规范</h2>
-
-<p><a href="https://github.com/arv/ecmascript-object-observe">Strawman proposal for ECMAScript 7</a>.</p>
-
-<h2 id="Browser_compatibility" name="Browser_compatibility">浏览器兼容性</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatChrome("36")}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatOpera("23")}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatChrome("36")}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatOpera("23")}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="See_also" name="See_also">相关链接</h2>
-
-<ul>
- <li>{{jsxref("Object.unobserve()")}} {{experimental_inline}}</li>
- <li>{{jsxref("Array.observe()")}} {{experimental_inline}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/parent/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/parent/index.html
deleted file mode 100644
index 8597b6c4a3..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/object/parent/index.html
+++ /dev/null
@@ -1,43 +0,0 @@
----
-title: Object.prototype.__parent__
-slug: Web/JavaScript/Reference/Global_Objects/Object/Parent
-tags:
- - JavaScript
- - 原型
- - 对象
- - 属性
- - 已废弃
- - 非标准
-translation_of: Archive/Web/JavaScript/Object.parent
----
-<div>{{JSRef}}{{Non-standard_Header}}{{Obsolete_Header("gecko2")}}</div>
-
-<p>The <strong><code>__parent__</code></strong> property used to point to an object's context, but it has been removed.</p>
-
-<p>指向一个对象的上下文.</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><var>obj</var>.__parent__</pre>
-
-<h2 id="描述">描述</h2>
-
-<p>对于最顶层对象来说,这个属性的值就是全局对象 window。</p>
-
-<h2 id="规范">规范</h2>
-
-<p>不属于任何规范。</p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-
-
-<p>{{Compat("javascript.builtins.Object.parent")}}</p>
-
-<h2 id="参见">参见</h2>
-
-<ul>
- <li><a class="external" href="http://whereswalden.com/2010/05/07/spidermonkey-change-du-jour-the-special-__parent__-property-has-been-removed/">SpiderMonkey change du jour: the special __parent__ property has been removed</a></li>
- <li><a href="/zh-CN/docs/Components.utils.getGlobalForObject">Components.utils.getGlobalForObject</a></li>
- <li><a href="/en-US/docs/JavaScript/Reference/Global_Objects/Object/Proto">__proto__</a></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/unobserve/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/unobserve/index.html
deleted file mode 100644
index bcae6ae8e7..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/object/unobserve/index.html
+++ /dev/null
@@ -1,133 +0,0 @@
----
-title: Object.unobserve()
-slug: Web/JavaScript/Reference/Global_Objects/Object/unobserve
-translation_of: Archive/Web/JavaScript/Object.unobserve
----
-<div>{{JSRef}} {{non-standard_header}}</div>
-
-<p><strong>Object.unobserve()</strong> 是用来移除通过 {{jsxref("Object.observe()")}}设置的观察者的方法。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code>Object.unobserve(<var>obj</var>, <var>callback</var>)</code></pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>obj</code></dt>
- <dd>需要停止观察的对象。</dd>
- <dt><code>callback</code></dt>
- <dd>通过 observer 给 <strong>obj </strong>对象设置的回调函数.</dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p><code>Object.unobserve()</code> 用来在 {{jsxref("Object.observe()")}} 被调用以后,从对象上移除一个观察者。</p>
-
-<p>这个回调函数必须是一个函数的引用,而不能是一个匿名函数。因为这个引用将被用来移除之前设置的观察者方法。 给 <strong>Object.unobserve() </strong>传入匿名函数作为回调是不起作用的, 它不能移除任何观察者方法。</p>
-
-<h2 id="例子">例子</h2>
-
-<h3 id="观察一个对象">观察一个对象</h3>
-
-<pre class="brush: js">var obj = {
-  foo: 0,
-  bar: 1
-};
-
-var observer = function(changes) {
-  console.log(changes);
-}
-
-Object.observe(obj, observer);
-​
-obj.newProperty = 2;
-// [{name: 'newProperty', object: &lt;obj&gt;, type: 'add'}]
-
-Object.unobserve(obj, observer);
-
-obj.foo = 1;
-// 回调函数不会被调用</pre>
-
-<h3 id="使用匿名函数">使用匿名函数</h3>
-
-<pre class="brush: js">var person = {
-  name : 'Ahmed',
-  age : 25
-};
-
-Object.observe(person, function (changes) {
-  console.log(changes);
-});
-
-person.age = 40;
-// [{name: 'age', object: &lt;obj&gt;, oldValue: 25, type: 'update'}]
-
-Object.unobserve(person, function (changes) {
-  console.log(changes);
-});
-
-person.age = 63;
-// [{name: 'age', object: &lt;obj&gt;, oldValue: 40, type: 'update'}]
-// 回调函数将会被调用
-</pre>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatChrome("36")}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatOpera("23")}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatChrome("36")}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatOpera("23")}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li>{{jsxref("Object.observe()")}} {{non-standard_inline}}</li>
- <li>{{jsxref("Array.observe()")}} {{non-standard_inline}}</li>
- <li>{{jsxref("Array.unobserve()")}} {{non-standard_inline}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/unwatch/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/unwatch/index.html
deleted file mode 100644
index 986154992d..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/object/unwatch/index.html
+++ /dev/null
@@ -1,105 +0,0 @@
----
-title: Object.prototype.unwatch()
-slug: Web/JavaScript/Reference/Global_Objects/Object/unwatch
-translation_of: Archive/Web/JavaScript/Object.unwatch
----
-<div>{{JSRef}}</div>
-
-<div class="warning">
-<p><strong>警告 :</strong> 请尽量避免使用 unwatch() 和  {{jsxref("Object.prototype.watch", "watch()")}} . 这两个方法仅在 Gecko 中实现 , 并且他们过去主要作调试用. 另外, 使用 watchpoints 对性能有一系列的副面影响 ,特别是当使用全局对象,如 <code>window</code>. 你应该使用  <a href="/en-US/docs/Web/JavaScript/Guide/Working_with_Objects#Defining_getters_and_setters">setters and getters</a> 或 proxies 来替代. 查阅 {{anch("Browser compatibility")}} 以获取更多信息.</p>
-</div>
-
-<p><code><strong>unwatch()</strong></code> 删除一个 {{jsxref("Object.prototype.watch", "watch()")}} 设置的 watchpoint.</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox"><code><var>obj</var>.unwatch(<var>prop</var>)</code></pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>prop</code></dt>
- <dd>想要停止监视的对象的属性名</dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p>JavaScript调试器具有类似的功能,以及其他调试选项。有关调试器的信息  <a href="/en-US/docs/Venkman">Venkman</a>.</p>
-
-<p>默认地, 这个方法 被每一个 {{jsxref("Object")}} 的子类继承 </p>
-
-<div class="note">
-<p><strong>Note:</strong> The reason for <code>unwatch()</code> to take the property name <em>prop</em> as its only parameter is due to the "single handler allowing" behavior of the {{jsxref("Object.watch", "watch()")}} method.</p>
-</div>
-
-<h2 id="例子">例子</h2>
-
-<p>See {{jsxref("Object.watch", "watch()")}}.</p>
-
-<h2 id="说明">说明</h2>
-
-<p>Not part of any specifications. Implemented in JavaScript 1.2.</p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatVersionUnknown}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatVersionUnknown}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="Compatibility_notes">Compatibility notes</h2>
-
-<ul>
- <li>从 Firefox 23 ({{bug(903332)}}) 开始, 在 {{domxref("Document")}} 对象上调用 <code>unwatch()</code> 抛出 {{jsxref("TypeError")}} . This regression has been fixed with Firefox 27.</li>
-</ul>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li>{{jsxref("Object.watch()")}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/object/watch/index.html b/files/zh-cn/web/javascript/reference/global_objects/object/watch/index.html
deleted file mode 100644
index 540967eee3..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/object/watch/index.html
+++ /dev/null
@@ -1,201 +0,0 @@
----
-title: Object.prototype.watch()
-slug: Web/JavaScript/Reference/Global_Objects/Object/watch
-tags:
- - Debugging
- - Deprecated
- - JavaScript
- - Method
- - Object
- - Obsolete
- - Prototype
-translation_of: Archive/Web/JavaScript/Object.watch
----
-<p>{{JSRef}}</p>
-
-<div class="warning">
-<p><strong>警告:</strong> 通常来讲,你应该尽量避免使用 <code>watch()</code>和  {{jsxref("Object.prototype.unwatch", "unwatch()")}} 这两个方法。因为只有 Gecko 实现了这两个方法,并且它们主要是为了在调试方便。另外,使用 watchpoint 对性能有严重的负面影响,在全局对象(如 window)上使用时尤其如此。你可以使用 <a href="/zh-cn/JavaScript/Guide/Working_with_Objects#Defining_getters_and_setters" title="https://developer.mozilla.org/zh-cn/Core_JavaScript_1.5_Guide/Working_with_Objects#Defining_getters_and_setters">setters and getters</a> 或者 proxy 代替。参见 {{ anch("Compatibility") }} 了解详情。</p>
-</div>
-
-<p><code><strong>watch() </strong></code>方法会监视属性是否被赋值并在赋值时运行相关函数。</p>
-
-<h2 id="Summary" name="Summary">语法</h2>
-
-<pre class="syntaxbox"><em>obj</em>.watch(<em>prop</em>, <em>handler</em>)</pre>
-
-<h3 id="Parameters" name="Parameters">参数</h3>
-
-<dl>
- <dt><code>prop</code></dt>
- <dd>想要监视值是否发生变化的指定对象的某个属性的属性名称</dd>
-</dl>
-
-<dl>
- <dt><code>handler</code></dt>
- <dd>当指定的属性发生变化时执行的回调函数</dd>
-</dl>
-
-<h3 id="返回值">返回值</h3>
-
-<p>{{jsxref("undefined")}}.</p>
-
-<h2 id="Description" name="Description">描述</h2>
-
-<p>监视对指定对象的名为 <code>prop</code> 属性的赋值操作,只要 <code>prop</code> 属性被赋值,便调用 <code>handler(prop, oldval, newval)</code> 回调函数,并将函数返回值保存到该属性。 通过返回修改的新值(或者返回旧值),一个监视点可以过滤(或使之为 null )赋值。</p>
-
-<p>如果你删除某个设置监视点的属性,该监视点并不会消失。如果你之后重新创建这个属性,监视点仍然有效。</p>
-
-<p>要移除某个监视点,使用 <code><a href="/zh-cn/JavaScript/Reference/Global_Objects/Object/unwatch" title="zh-cn/JavaScript/Reference/Global_Objects/Object/unwatch">unwatch()</a></code> 方法。默认所有 <code>Object</code> 的后代都将继承 <code>watch</code> 方法。</p>
-
-<p>JavaScript 调试器有与之相似的机制以及其它调试选项。需要更多有关调试器的信息,请查阅 <a href="/zh-cn/Venkman" title="zh-cn/Venkman">Venkman</a>。</p>
-
-<p>对于 Firefox,<code>handler</code> 只会被脚本内的赋值操作激活,并不包括本地代码。举个例子,如果用户点击一个指向当前文档内的某个锚点, <code>window.watch('location', myHandler)</code> 不会回调 <code>myHandler</code> ,但 <code>window.location += '#myAnchor'</code> 将触发回调  <code>myHandler</code>。</p>
-
-<div class="note"><strong>注意:</strong> 对一个对象的指定属性调用 <code>watch()</code>  将覆盖先前关联的 handler。</div>
-
-<h2 id="Examples" name="Examples">例子</h2>
-
-<h3 id="Example_Using_watch_and_unwatch" name="Example:_Using_watch_and_unwatch">使用 <code>watch</code> 和 <code>unwatch</code></h3>
-
-<pre class="brush: js">var o = {p:1};
-o.watch("p",
- function (id, oldval, newval) {
- console.log("o." + id + "由" + oldval + " 变为 " + newval);
- return newval;
- });
-
-o.p = 2;
-o.p = 3;
-delete o.p;
-o.p = 4;
-
-o.unwatch('p');
-o.p = 5;
-</pre>
-
-<p>上面的代码显示结果如下:</p>
-
-<pre class="eval">o.p 由 1 变为 2
-o.p 由 2 变为 3
-o.p 由 undefined 变为 4
-</pre>
-
-<h3 id="Example_Using_watch_to_validate_an_object.27s_properties" name="Example:_Using_watch_to_validate_an_object.27s_properties">使用 <code>watch</code> 来验证一个对象的属性</h3>
-
-<p>你可以使用 <code>watch</code> 来检测一个对象的属性赋值是否是合法的.下例演示了如何确保每个人始终具有一个合法的名字和0 到 200之间的年龄.</p>
-
-<pre class="brush: js">Person = function(name,age) {
- this.watch("age", Person.prototype._isValidAssignment);
- this.watch("name", Person.prototype._isValidAssignment);
- this.name = name;
- this.age = age;
-}
-
-Person.prototype.toString = function() {
- return this.name + ", " + this.age;
-};
-
-Person.prototype._isValidAssignment = function(id, oldval, newval) {
- if (id === "name" &amp;&amp; (!newval || newval.length &gt; 30)) {
- throw new RangeError("不合法的名字 " + this);
- }
- if (id === "age" &amp;&amp; (newval &lt; 0 || newval &gt; 200)) {
- throw new RangeError("不合法的年龄 " + this);
- }
- return newval;
-}
-
-will = new Person("Will", 29);
-print(will); // Will, 29
-
-try {
- will.name = "";
-} catch (e) {
- //print(e);
- console.log(e);
-}
-
-try {
- will.age = -4;
-} catch (e) {
- console.log(e);
-}
-</pre>
-
-<p>上面的代码显示结果如下:</p>
-
-<pre class="eval">Will, 29
-RangeError: 不合法的名字 Will, 29
-RangeError: 不合法的年龄 Will, 29
-</pre>
-
-<h2 id="Specifications">Specifications</h2>
-
-<p>不是任何规范的一部分。从 JavaScript 1.2 开始实现。</p>
-
-<h2 id="Browser_compatibility">Browser compatibility</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatVersionUnknown}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatVersionUnknown}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="兼容性提示">兼容性提示</h2>
-
-<ul>
- <li>此 <a href="https://gist.github.com/384583">Polyfill</a> 为所有 ES5 兼容浏览器提供 <code>watch</code> 支持。</li>
- <li>使用 {{jsxref("Proxy")}} 允许你更加深度地调整属性服务机制</li>
- <li>从 Firefox 23 开始,在 {{domxref("Document")}} 对象上调用 <code>watch()</code> 将抛出 {{jsxref("TypeError")}} 错误。这个回归问题已经在 Firefox 27 修复。</li>
-</ul>
-
-<h2 id="See_Also" name="See_Also">相关链接</h2>
-
-<ul>
- <li>{{jsxref("Object.unwatch()")}}</li>
- <li>{{jsxref("Object.observe()")}} {{obsolete_inline}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/parallelarray/index.html b/files/zh-cn/web/javascript/reference/global_objects/parallelarray/index.html
deleted file mode 100644
index 739d25c173..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/parallelarray/index.html
+++ /dev/null
@@ -1,53 +0,0 @@
----
-title: ParallelArray
-slug: Web/JavaScript/Reference/Global_Objects/ParallelArray
-tags:
- - JavaScript
- - ParallelArray
- - 过时
-translation_of: Archive/Web/ParallelArray
----
-<p>The goal of <strong><code>ParallelArray</code></strong> was to enable data-parallelism in web applications. The higher-order functions available on <code>ParallelArray</code> attempted to execute in parallel, though they may fall back to sequential execution if necessary. To ensure that your code executes in parallel, it is suggested that the functions should be limited to the <a href="http://smallcultfollowing.com/babysteps/blog/2013/04/30/parallelizable-javascript-subset/">parallelizable subset of JS that Firefox supports</a>.</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox">new ParallelArray()
-new ParallelArray([element0, element1, ...])
-new ParallelArray(arrayLength, elementalFunction)</pre>
-
-<h2 id="ParallelArray_instances"><code>ParallelArray</code> instances</h2>
-
-<h3 id="属性">属性</h3>
-
-<dl>
- <dt>length</dt>
- <dd>Reflects the number of elements in the <code>ParallelArray</code>.</dd>
-</dl>
-
-<h3 id="方法">方法</h3>
-
-<dl>
- <dt>map</dt>
- <dt>reduce</dt>
- <dt>scan</dt>
- <dt>scatter</dt>
- <dt>filter</dt>
- <dt>flatten</dt>
- <dt>partition</dt>
- <dt>get</dt>
-</dl>
-
-<h2 id="示例">示例</h2>
-
-<h3 id="Using_map_in_parallel">Using <code>map</code> in parallel</h3>
-
-<pre class="brush: js">var p = new ParallelArray([0, 1, 2, 3, 4]);
-var m = p.map(function (v) {
- return v + 1;
-});</pre>
-
-<h2 id="参见">参见</h2>
-
-<ul>
- <li><a href="http://wiki.ecmascript.org/doku.php?id=strawman:data_parallelism">Ecmascript ParallelArray strawman</a></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/global_objects/string/quote/index.html b/files/zh-cn/web/javascript/reference/global_objects/string/quote/index.html
deleted file mode 100644
index 3d8d197f46..0000000000
--- a/files/zh-cn/web/javascript/reference/global_objects/string/quote/index.html
+++ /dev/null
@@ -1,116 +0,0 @@
----
-title: String.prototype.quote()
-slug: Web/JavaScript/Reference/Global_Objects/String/quote
-tags:
- - JavaScript
- - Method
- - Non-standard
- - Obsolete
- - Prototype
- - String
-translation_of: Archive/Web/JavaScript/String.quote
----
-<div>{{obsolete_header("37")}}</div>
-
-<div>{{JSRef("Global_Objects", "String")}}{{Non-standard_header}}</div>
-
-<h2 id="Summary" name="Summary">概述</h2>
-
-<p>将字符串中包含的特殊字符进行转义(反斜杠),然后在字符串两边各加上一个双引号(<code>"</code>)并返回,并不修改原字符串.</p>
-
-<h2 id="Syntax" name="Syntax">语法</h2>
-
-<pre class="syntaxbox"><code><em>str</em>.quote()</code></pre>
-
-<h2 id="Examples" name="Examples">示例</h2>
-
-<table class="fullwidth-table">
- <thead>
- <tr>
- <th class="header" scope="col"><code>str</code></th>
- <th class="header" scope="col"><code>str.quote()</code></th>
- <th class="header" scope="col"><code><a href="/zh-CN/docs/JavaScript/Reference/Global_Objects/eval" title="JavaScript/Reference/Global_Objects/eval">eval</a>(str.quote())</code></th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><code>Hello world!</code></td>
- <td><code>"Hello world!"</code></td>
- <td><code>Hello world!</code></td>
- </tr>
- <tr>
- <td><code>Hello<br>
-         world!</code></td>
- <td><code>"Hello\n\tworld!"</code></td>
- <td><code>Hello<br>
-         world!</code></td>
- </tr>
- <tr>
- <td><code>" \ — '</code></td>
- <td><code>"\" \\ \u2014 '"</code></td>
- <td><code>" \ — '</code></td>
- </tr>
- </tbody>
-</table>
-
-<h2 id="Specifications" name="Specifications">规范</h2>
-
-<p>不在任何规范中。实现于 JavaScript 1.3.</p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<div>{{CompatibilityTable}}</div>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h2 id="See_also" name="See_also">相关链接</h2>
-
-<ul>
- <li><code><a href="/zh-CN/docs/JavaScript/Reference/Global_Objects/JSON/stringify" title="JavaScript/Reference/Global_Objects/JSON/stringify">JSON.stringify</a></code></li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/operators/array_comprehensions/index.html b/files/zh-cn/web/javascript/reference/operators/array_comprehensions/index.html
deleted file mode 100644
index 8bdfa28db2..0000000000
--- a/files/zh-cn/web/javascript/reference/operators/array_comprehensions/index.html
+++ /dev/null
@@ -1,157 +0,0 @@
----
-title: 数组推导式
-slug: Web/JavaScript/Reference/Operators/Array_comprehensions
-tags:
- - JavaScript
- - Non-standard
- - 参考
- - 运算符
-translation_of: Archive/Web/JavaScript/Array_comprehensions
----
-<div class="warning">
-<p><strong>非标准。不要使用!</strong><br>
- 数组推导是非标准的。以后应该用 {{jsxref("Array.prototype.map")}},{{jsxref("Array.prototype.filter")}},{{jsxref("Functions/Arrow_functions", "箭头函数", "", 1)}}和{{jsxref("Operators/Spread_operator", "展开语法", "", 1)}}.。</p>
-</div>
-
-<p>{{jsSidebar("Operators")}} </p>
-
-<p><strong>数组推导式</strong>是一种 JavaScript 表达式语法,使用它,你可以在一个原有数组的基础上快速的构造出一个新的数组。但是它已经从标准和火狐中移除。不要用它!</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox">[for (x of iterable) x]
-[for (x of iterable) if (condition) x]
-[for (x of iterable) for (y of iterable) x + y]
-</pre>
-
-<h2 id="描述">描述</h2>
-
-<p>在数组推导式内部,可以使用下面两种子语句:</p>
-
-<ul>
- <li><a href="/zh-CN/docs/Web/JavaScript/Reference/Statements/for...of">for...of</a></li>
- <li><a href="/zh-CN/docs/Web/JavaScript/Reference/Statements/if...else">if</a></li>
-</ul>
-
-<p>每个 <code>for-of</code> 语句都放在与其配对的 <code>if</code> 语句(可以有多个,也可以完全省略)的左边,每个数组推导式中可以包含多组这样的配对,但最终选取的表达式值只能有一个,且这个值(也可以是个数组推导式,也就是说可以嵌套)只能放在推导式的最右边,紧靠着右中括号。</p>
-
-<h2 id="示例">示例</h2>
-
-<h3 id="基本的数组推导式写法">基本的数组推导式写法</h3>
-
-<pre class="brush:js">[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" ]</pre>
-
-<h3 id="带有_if_语句的数组推导式">带有 if 语句的数组推导式</h3>
-
-<pre class="brush: js">var years = [ 1954, 1974, 1990, 2006, 2010, 2014 ];
-
-[for (year of years) if (year &gt; 2000) year];
-// [ 2006, 2010, 2014 ]
-
-[for (year of years) if (year &gt; 2000) if(year &lt; 2010) year];
-// [ 2006], 和下面的写法等效:
-
-[for (year of years) if (year &gt; 2000 &amp;&amp; year &lt; 2010) year];
-// [ 2006]
-</pre>
-
-<h3 id="用数组推导式比用数组的_map、filter_方法更简洁">用数组推导式比用数组的 <code>map</code>、<code>filter</code> 方法更简洁</h3>
-
-<p>对比数组的 {{jsxref("Array.map", "map")}} 和 {{jsxref("Array.filter", "filter")}} 方法:</p>
-
-<pre class="brush: js">var numbers = [ 1, 2, 3 ];
-
-numbers.map(function (i) { return i * i });
-[for (i of numbers) i*i ];
-// 返回值都是 [ 1, 4, 9 ]
-
-numbers.filter(function (i) { return i &lt; 3 });
-[for (i of numbers) if (i &lt; 3) i];
-// 返回值都是 [ 1, 2 ]
-</pre>
-
-<h3 id="带有两个数组的数组推导式">带有两个数组的数组推导式</h3>
-
-<p>用两个 <code>for-of</code> 语句迭代两个不同的数组:</p>
-
-<pre class="brush: js">var numbers = [ 1, 2, 3 ];
-var letters = [ "a", "b", "c" ];
-
-var cross = [for (i of numbers) for (j of letters) i+j];
-// [ "1a", "1b", "1c", "2a", "2b", "2c", "3a", "3b", "3c" ]
-
-var grid = [for (i of numbers) [for (j of letters) i+j]];
-// [
-// ["1a", "1b", "1c"],
-// ["2a", "2b", "2c"],
-// ["3a", "3b", "3c"]
-// ]
-
-[for (i of numbers) if (i &gt; 1) for (j of letters) if(j &gt; "a") i+j]
-// ["2b", "2c", "3b", "3c"],和下面的写法<strong>等效</strong>:
-
-[for (i of numbers) for (j of letters) if (i &gt; 1) if(j &gt; "a") i+j]
-// ["2b", "2c", "3b", "3c"]
-
-[for (i of numbers) if (i &gt; 1) [for (j of letters) if(j &gt; "a") i+j]]
-// [["2b", "2c"], ["3b", "3c"]],和下面的写法<strong>不等效</strong>:
-
-[for (i of numbers) [for (j of letters) if (i &gt; 1) if(j &gt; "a") i+j]]
-// [[], ["2b", "2c"], ["3b", "3c"]]
-</pre>
-
-<h2 id="规范">规范</h2>
-
-<p>最初起草在ECMAScript 6草案中,但在第27版(2014年8月)中被移除。 请参阅ES 6的旧修订版的规范语义。</p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<div class="hidden"><span style='background-color: transparent; color: #333333; display: inline !important; float: none; font-family: "Open Sans",arial,x-locale-body,sans-serif; font-size: 16px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; white-space: normal;'>本页的浏览器兼容性表都是基于结构化数据,如果你想更新数据.可以查看</span> <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> <span style='background-color: transparent; color: #333333; display: inline !important; float: none; font-family: "Open Sans",arial,x-locale-body,sans-serif; font-size: 16px; font-style: normal; font-variant: normal; font-weight: 400; letter-spacing: normal; text-align: left; text-decoration: none; text-indent: 0px; text-transform: none; white-space: normal;'>并且请给我们发送合并请求</span>.</div>
-
-<p>{{Compat("javascript.operators.array_comprehensions")}}</p>
-
-<h2 id="同旧版的JS1.7JS1.8数组推导的不同之处">同旧版的JS1.7/JS1.8数组推导的不同之处</h2>
-
-<p> </p>
-
-<div class="warning">JS1.7/JS1.8数组推导 在Gecko的46版本中已经被移除了 ({{bug(1220564)}}).</div>
-
-<p><strong>旧版数组推导语法 (请不要再使用了!):</strong></p>
-
-<pre class="brush: js example-bad">[X for (Y in Z)]
-[X for each (Y in Z)]
-[X for (Y of Z)]
-</pre>
-
-<p>不同点:</p>
-
-<ul>
- <li>ESNext数组推导为每个"for"创建了一个作用域而取代了整个作用域.
- <ul>
- <li>Old: <code>[()=&gt;x for (x of [0, 1, 2])][1]() // 2</code></li>
- <li>New: <code>[for (x of [0, 1, 2]) ()=&gt;x][1]() // 1, each iteration creates a fresh binding for x. </code></li>
- </ul>
- </li>
- <li>ESNext 同"for"进行赋值而取代了旧的赋值表达式.
- <ul>
- <li>Old: <code>[i * 2 for (i of numbers)]</code></li>
- <li>New: <code>[for (i of numbers) i * 2]</code></li>
- </ul>
- </li>
- <li>ESNext数组推导可由多个if和for组成</li>
- <li>ESNext数组推导只和<code>{{jsxref("Statements/for...of", "for...of")}}</code>迭代才有效,而不会同 <code>{{jsxref("Statements/for...in", "for...in")}}</code> 迭代.</li>
-</ul>
-
-<p>点击查看 <a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1220564#c42">Bug 1220564, comment 42</a> 并提出建设性建议.</p>
-
-<h2 id="See_also" name="See_also">相关链接</h2>
-
-<ul>
- <li><a href="/zh-CN/docs/Web/JavaScript/Reference/Statements/for...of"><code>for...of</code></a></li>
- <li>{{jsxref("Operators/Generator_comprehensions", "生成器推导式", "" ,1)}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/operators/expression_closures/index.html b/files/zh-cn/web/javascript/reference/operators/expression_closures/index.html
deleted file mode 100644
index e5dee577bc..0000000000
--- a/files/zh-cn/web/javascript/reference/operators/expression_closures/index.html
+++ /dev/null
@@ -1,76 +0,0 @@
----
-title: Expression closures
-slug: Web/JavaScript/Reference/Operators/Expression_closures
-tags:
- - Functions
- - JavaScript
- - Reference
-translation_of: Archive/Web/JavaScript/Expression_closures
----
-<div class="warning"><strong>非标准,不要使用!</strong><br>
-闭包表达式语法是废弃的 SpiderMonkey 的特性,并且<a href="https://bugzilla.mozilla.org/show_bug.cgi?id=1083458">将被移除</a>。为了长远使用,考虑使用<a href="/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions">箭头函数</a>。</div>
-
-<div>{{jsSidebar("Operators")}}</div>
-
-<p>表达式闭包是定义简单函数的一种便捷方式。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox">function [<em>name</em>]([<em>param1</em>[, <em>param2[</em>, ..., <em>paramN</em>]]])
- <em>expression</em>
-</pre>
-
-<h3 id="参数">参数</h3>
-
-<dl>
- <dt><code>name</code></dt>
- <dd>函数名。函数名可以省略不写,称为匿名函数。函数名仅在函数体有效。</dd>
- <dt><code>paramN</code></dt>
- <dd>形参名。一个函数最多可以有255个参数。</dd>
- <dt><code>expression</code></dt>
- <dd>构成函数体的表达式。</dd>
-</dl>
-
-<h2 id="描述">描述</h2>
-
-<p>这一附加特性只是编写简单函数的快捷方式,让语言更类似通常的 <a class="external" href="http://en.wikipedia.org/wiki/Lambda_calculus#Lambda_calculus_and_programming_languages">Lambda 标记</a>。</p>
-
-<p>JavaScript 1.7 及之前版本:</p>
-
-<pre class="brush: js">function(x) { return x * x; }</pre>
-
-<p>JavaScript 1.8:</p>
-
-<pre class="brush: js">function(x) x * x</pre>
-
-<p>该语法支持省略花括号和'return'语句。使用这种编码的目的只是为了在句法上使得代码更加简化,但除此之外没有其他好处。</p>
-
-<h2 id="示例">示例</h2>
-
-<p>一种绑定事件监听器的便捷方式:</p>
-
-<pre class="brush: js"> document.addEventListener("click", function() false, true);
-</pre>
-
-<p>在 JavaScript 1.6 中的一些数组函数中使用该标记:</p>
-
-<pre class="brush: js">elems.some(function(elem) elem.type == "text");
-</pre>
-
-<h2 id="浏览器兼容">浏览器兼容</h2>
-
-<div class="hidden">The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> and send us a pull request.</div>
-
-<p>{{Compat("javascript.operators.expression_closures")}}</p>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li>{{jsxref("Functions_and_function_scope", "Functions and function scope")}}</li>
- <li>{{jsxref("Function")}}</li>
- <li>{{jsxref("Statements/function", "function statement")}}</li>
- <li>{{jsxref("Operators/function", "function expression")}}</li>
- <li>{{jsxref("Statements/function*", "function* statement")}}</li>
- <li>{{jsxref("Operators/function*", "function* expression")}}</li>
- <li>{{jsxref("GeneratorFunction")}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/operators/generator_comprehensions/index.html b/files/zh-cn/web/javascript/reference/operators/generator_comprehensions/index.html
deleted file mode 100644
index 1442d50019..0000000000
--- a/files/zh-cn/web/javascript/reference/operators/generator_comprehensions/index.html
+++ /dev/null
@@ -1,193 +0,0 @@
----
-title: Generator推导式
-slug: Web/JavaScript/Reference/Operators/Generator_comprehensions
-translation_of: Archive/Web/JavaScript/Generator_comprehensions
----
-<div class="warning"><strong>非标准的。不要使用!</strong><br>
-generator推导式是非标准的,而且它不太可能会被添加到ECMAScript。考虑到将来,请使用 {{jsxref("Statements/function*", "generator", "", 1)}}。
-<p> </p>
-</div>
-
-<p>{{jsSidebar("Operators")}}</p>
-
-<p>生成器推导语法是一种JavaScript表达式,它允许您基于现有的可迭代对象快速组合新的生成器函数。</p>
-
-<p>许多编程语言中都存在推导。</p>
-
-<p>看下面,原来Generator推导式语法在SpiderMonkey的不同之处,它是基于对ECMAScript4的提议。</p>
-
-<h2 id="语法">语法</h2>
-
-<pre class="syntaxbox">(for (x of iterable) x)
-(for (x of iterable) if (condition) x)
-(for (x of iterable) for (y of iterable) x + y)
-</pre>
-
-<h2 id="描述">描述</h2>
-
-<p>在Generator推导式中,这两种构成方式都是允许的:</p>
-
-<ul>
- <li>{{jsxref("Statements/for...of", "for...of")}} </li>
- <li>{{jsxref("Statements/if...else", "if")}}</li>
-</ul>
-
-<p>for-of迭代器是构成的第一个部分。当由多重部分构成时,后面for-of和if构成方式都是被允许的。</p>
-
-<h2 id="示例">示例</h2>
-
-<h3 id="单个构成部分的_generator推导式:">单个构成部分的 generator推导式:</h3>
-
-<pre class="brush:js">(for (i of [ 1, 2, 3 ]) i*i );
-// generator function which yields 1, 4, and 9
-
-[...(for (i of [ 1, 2, 3 ]) i*i )];
-// [1, 4, 9]
-
-var abc = [ "A", "B", "C" ];
-(for (letters of abc) letters.toLowerCase());
-// generator function which yields "a", "b", and "c"
-
-</pre>
-
-<h3 id="有if伴随的多重构成的gennerator推导式:">有if伴随的多重构成的gennerator推导式:</h3>
-
-<pre class="brush: js">var years = [ 1954, 1974, 1990, 2006, 2010, 2014 ];
-
-(for (year of years) if (year &gt; 2000) year);
-// generator function which yields 2006, 2010, and 2014
-
-(for (year of years) if (year &gt; 2000) if(year &lt; 2010) year);
-// generator function which yields 2006, the same as below:
-
-(for (year of years) if (year &gt; 2000 &amp;&amp; year &lt; 2010) year);
-// generator function which yields 2006
-</pre>
-
-<h3 id="Generator推导式与Generator函数对比">Generator推导式与Generator函数对比</h3>
-
-<p>用一种简单的方式来理解generator推导式的语法并与generator函数来做个比较。</p>
-
-<p>Example 1: 仅是 generator.</p>
-
-<pre class="brush: js">var numbers = [ 1, 2, 3 ];
-
-// Generator 函数
-(function*() {
- for (let i of numbers) {
- yield i * i;
- }
-})()
-
-// Generator 推导式
-(for (i of numbers) i*i );
-
-// 结果: 两者都得到 yields [ 1, 4, 9 ]
-</pre>
-
-<p>Example 2: 在 generator 中用if.</p>
-
-<pre class="brush: js">var numbers = [ 1, 2, 3 ];
-
-// Generator 函数
-(function*() {
- for (let i of numbers) {
- if (i &lt; 3) {
- yield i * 1;
- }
- }
-})()
-
-// Generator 推导式
-(for (i of numbers) if (i &lt; 3) i);
-
-// 结果: 两者都得到 yields [ 1, 2 ]</pre>
-
-<h2 id="规范">规范</h2>
-
-<p>Generator推导式是最初在ECMAScript 2015中进行拟稿,但是在14年8月27号修订中被移除了。 请参阅较旧版本的ES2015规范语义.</p>
-
-<h2 id="浏览器兼容性">浏览器兼容性</h2>
-
-<p>{{CompatibilityTable}}</p>
-
-<div id="compat-desktop">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Chrome</th>
- <th>Firefox (Gecko)</th>
- <th>Internet Explorer</th>
- <th>Opera</th>
- <th>Safari</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{ CompatGeckoDesktop("30") }}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<div id="compat-mobile">
-<table class="compat-table">
- <tbody>
- <tr>
- <th>Feature</th>
- <th>Android</th>
- <th>Chrome for Android</th>
- <th>Firefox Mobile (Gecko)</th>
- <th>IE Mobile</th>
- <th>Opera Mobile</th>
- <th>Safari Mobile</th>
- </tr>
- <tr>
- <td>Basic support</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{ CompatGeckoMobile("30") }}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- <td>{{CompatNo}}</td>
- </tr>
- </tbody>
-</table>
-</div>
-
-<h3 id="SpiderMonkey的具体实现笔记">SpiderMonkey的具体实现笔记</h3>
-
-<ul>
- <li>{{jsxref("Statements/let", "let")}} 作为标识符,因为let当前仅可用于JS版本1.7和XUL脚本标记.</li>
- <li>目前还不支持解构 ({{bug(980828)}}).</li>
-</ul>
-
-<h3 id="与旧的JS1.7_JS1.8理解的区别">与旧的JS1.7 / JS1.8理解的区别</h3>
-
-<ul>
- <li>ES2016 的解析为每个“for”节点创建一个范围,而不是作为一个整体的理解。
- <ul>
- <li>Old: <code>[...(()=&gt;x for (x of [0, 1, 2]))][1]() // 2</code></li>
- <li>New: <code>[...(for (x of [0, 1, 2]) ()=&gt;x)][1]() // 1, 每个迭代都会创建一个新的x的绑定事件。</code></li>
- </ul>
- </li>
- <li> ES2016的解析以“for”而不是赋值表达式开头。
- <ul>
- <li>Old: <code>(i * 2 for (i of numbers))</code></li>
- <li>New: <code>(for (i of numbers) <code>i * 2</code>)</code></li>
- </ul>
- </li>
- <li>ES2016 解析可以有多个if和for组件。</li>
- <li>ES2016 解析仅这种方式工作<code>{{jsxref("Statements/for...of", "for...of")}}</code> 而不是<code>{{jsxref("Statements/for...in", "for...in")}}</code> 的方式迭代。</li>
-</ul>
-
-<h2 id="相关链接">相关链接</h2>
-
-<ul>
- <li>{{jsxref("Statements/for...of", "for...of")}}</li>
- <li>{{jsxref("Operators/Array_comprehensions", "Array comprehensions")}}</li>
-</ul>
diff --git a/files/zh-cn/web/javascript/reference/statements/for_each...in/index.html b/files/zh-cn/web/javascript/reference/statements/for_each...in/index.html
deleted file mode 100644
index 05c1043588..0000000000
--- a/files/zh-cn/web/javascript/reference/statements/for_each...in/index.html
+++ /dev/null
@@ -1,69 +0,0 @@
----
-title: for each...in
-slug: Web/JavaScript/Reference/Statements/for_each...in
-translation_of: Archive/Web/JavaScript/for_each...in
----
-<div>{{jsSidebar("Statements")}}</div>
-
-<p>使用一个变量迭代一个对象的所有属性值,对于每一个属性值,有一个指定的语句块被执行。</p>
-
-<div class="noinclude">
-<div class="warning">
-<p>作为ECMA-357(<a href="/zh-CN/docs/E4X" title="/zh-CN/docs/E4X">E4X</a>)标准的一部分,for each...in语句已被废弃,E4X中的大部分特性已被删除,但考虑到向后兼容,for each...in只会被禁用而不会被删除,可以使用ES6中新的<a href="/zh-CN/docs/JavaScript/Reference/Statements/for...of" title="/zh-CN/docs/JavaScript/Reference/Statements/for...of">for...of</a>语句来代替。({{ bug("791343")}}.)</p>
-</div>
-
-<div class="note"><code>for each...in</code> 是 <a class="external" href="http://www.ecma-international.org/publications/standards/Ecma-357.htm" title="http://www.ecma-international.org/publications/standards/Ecma-357.htm">ECMA-357 (E4X)</a> 标准的一部分,大部分非Mozilla浏览器都没有实现该标准,E4X并不是 ECMAScript 标准的一部分。</div>
-</div>
-
-<h2 id="Syntax" name="Syntax">语法</h2>
-
-<pre class="syntaxbox"><code>for each (<em>variable</em> in <em>object</em>) {
- <em>statement</em>
-}</code></pre>
-
-<h2 id="Parameters" name="Parameters">参数</h2>
-
-<dl>
- <dt><code>variable</code></dt>
- <dd>用来遍历属性值的变量,前面的<code>var</code>关键字是可选的。该变量是函数的局部变量而不是语句块的局部变量。</dd>
-</dl>
-
-<dl>
- <dt><code>object</code></dt>
- <dd>属性值会被遍历的对象。</dd>
-</dl>
-
-<dl>
- <dt><code>statement</code></dt>
- <dd>遍历属性时执行的语句。如果想要执行多条语句,请用<a href="/zh-CN/docs/Web/JavaScript/Reference/Statements/block">块语句</a>(<code>{ ... }</code>) 将多条语句括住。</dd>
-</dl>
-
-<h2 id="Description" name="Description">描述</h2>
-
-<p>一些对象的内置属性是无法被遍历到的,包括所有的内置方法,例如String对象的<code>indexOf</code>方法。不过,大部分的用户自定义属性都是可遍历的.</p>
-
-<h2 id="Examples" name="Examples">示例</h2>
-
-<h3 id="Example:_Using_for_each...in" name="Example:_Using_for_each...in">例子: 使用<code>for each...in</code></h3>
-
-<p><strong>警告:</strong>永远不要使用for each...in语句遍历数组,仅用来遍历常规对象。<a href="/zh-CN/docs/JavaScript/Reference/Statements/for...in#Description" title="JavaScript/Reference/Statements/for...in#Description">这里讲解了为什么这么说</a>。</p>
-
-<p>下面的代码片段演示如何遍历一个对象的属性值,并计算它们的和:</p>
-
-<pre class="brush:js">var sum = 0;
-var obj = {prop1: 5, prop2: 13, prop3: 8};
-
-for each (var item in obj) {
- sum += item;
-}
-
-print(sum); // 输出"26",也就是5+13+8的值</pre>
-
-<h2 id="See_also" name="See_also">参见</h2>
-
-<ul>
- <li><a href="/zh-CN/docs/JavaScript/Reference/Statements/for...in" title="JavaScript/Reference/Statements/for...in">for...in</a> - 一个相似的语法,用来遍历对象的属性名称而非属性值.</li>
- <li><a href="/zh-CN/docs/JavaScript/Reference/Statements/for...of" title="/zh-CN/docs/JavaScript/Reference/Statements/for...of">for...of</a> - 一个相似的语法,用来遍历可迭代对象,有时候效果等同于<code>for each</code>...<code>in</code>语句.</li>
- <li><a href="/zh-CN/docs/JavaScript/Reference/Statements/for" title="JavaScript/Reference/Statements/for">for</a></li>
- <li><a href="/zh-CN/docs/JavaScript/Guide/Predefined_Core_Objects#Array_Object">数组推导式</a> (该语句中可以使用for...in<code>,</code><code>for each</code>...<code>in,</code><code>for</code>...<code>of多种语法</code>)</li>
-</ul>