语法高亮,滚动条美化,设置页面调整

This commit is contained in:
fofolee
2019-04-19 02:41:09 +08:00
parent 1e8f76c000
commit 359d29ee0b
1590 changed files with 12328 additions and 11441 deletions

View File

@@ -3,18 +3,18 @@
<p><strong><code>toString()</code> </strong>方法返回一个表示当前函数源代码的字符串。</p>
<div><iframe class="interactive interactive-js" frameborder="0" height="250" src="https://interactive-examples.mdn.mozilla.net/pages/js/function-tostring.html" width="100%"></iframe></div>
<h2 id="Syntax" name="Syntax">语法</h2>
<pre class="syntaxbox"><code><var>function</var>.toString()</code></pre>
<pre><code class="language-javascript"><code><var>function</var>.toString()</code></code></pre>
<h3 id="返回值">返回值</h3>
<p>表示函数源代码的一个字符串</p>
<h2 id="Description" name="Description">描述</h2>
<p><a href="Reference/Function" title="此页面仍未被本地化, 期待您的翻译!"><code>Function</code></a>对象覆盖了从<a href="Reference/Global_Objects/Object" title="Object 构造函数创建一个对象包装器。"><code>Object</code></a>继承来的<a href="Reference/Global_Objects/Object/toString" title="toString() 方法返回一个表示该对象的字符串。"><code>toString</code></a> 方法。对于用户定义的 <a href="Reference/Function" title="此页面仍未被本地化, 期待您的翻译!"><code>Function</code></a> 对象,<code>toString</code>方法返回一个字符串,其中包含用于定义函数的源文本段。</p>
<p><a href="Reference/Function" title="此页面仍未被本地化, 期待您的翻译!"><code>Function</code></a>需要转换为字符串时,通常会自动调用函数的 <code>toString </code>方法。</p>
<p><code>this</code> 不是 <code>Function </code>对象,则 <code>toString()</code> 方法将抛出 <a href="Reference/Global_Objects/TypeError" title="TypeError类型错误 对象用来表示值的类型非预期类型时发生的错误。"><code>TypeError</code></a>  ("Function.prototype.toString called on incompatible object") 异常,比如 <a href="Reference/Global_Objects/Proxy" title="Proxy 对象用于定义基本操作的自定义行为(如属性查找,赋值,枚举,函数调用等)。"><code>Proxy</code></a> 对象就会抛出异常。</p>
<pre class="brush: js example-bad">Function.prototype.toString.call('foo'); // TypeError
</pre>
<pre><code class="language-js example-bad">Function.prototype.toString.call('foo'); // TypeError
</code></pre>
<p>如果是在内置函数或由 <code>Function.prototype.bind </code>返回的函数上调用 <code>toString()</code>,则<code>toString()</code> 返回原生代码字符串,如下</p>
<pre class="brush: js">"function () {\n    [native code]\n}"
</pre>
<pre><code class="language-javascript">"function () {\n    [native code]\n}"
</code></pre>
<p>若是在由 <code>Function</code> 构造器生成的函数上调用 <code>toString()</code> ,则 <code>toString()</code> 返回创建后的函数源码,包括形参和函数体,函数名为 "anonymous"。</p>
<h2 id="示例">示例</h2>
<table class="standard-table">
@@ -28,71 +28,71 @@
<tr>
<td>
<pre>
function f(){}</pre>
function f(){}</code></pre>
</td>
<td>
<pre>
"function f(){}"</pre>
"function f(){}"</code></pre>
</td>
</tr>
<tr>
<td>
<pre>
class A { a(){} }</pre>
class A { a(){} }</code></pre>
</td>
<td>
<pre>
"class A { a(){} }"</pre>
"class A { a(){} }"</code></pre>
</td>
</tr>
<tr>
<td>
<pre>
function* g(){}</pre>
function* g(){}</code></pre>
</td>
<td>
<pre>
"function* g(){}"</pre>
"function* g(){}"</code></pre>
</td>
</tr>
<tr>
<td>
<pre>
a =&gt; a</pre>
a =&gt; a</code></pre>
</td>
<td>
<pre>
"a =&gt; a"</pre>
"a =&gt; a"</code></pre>
</td>
</tr>
<tr>
<td>
<pre>
({ a(){} }.a)</pre>
({ a(){} }.a)</code></pre>
</td>
<td>
<pre>
"a(){}"</pre>
"a(){}"</code></pre>
</td>
</tr>
<tr>
<td>
<pre>
({ *a(){} }.a)</pre>
({ *a(){} }.a)</code></pre>
</td>
<td>
<pre>
"*a(){}"</pre>
"*a(){}"</code></pre>
</td>
</tr>
<tr>
<td>
<pre>
({ [0](){} }[0])</pre>
({ [0](){} }[0])</code></pre>
</td>
<td>
<pre>
"[0](){}"</pre>
"[0](){}"</code></pre>
</td>
</tr>
<tr>
@@ -100,11 +100,11 @@ a =&gt; a</pre>
<pre>
Object.getOwnPropertyDescriptor({
  get a(){}
}, "a").get</pre>
}, "a").get</code></pre>
</td>
<td>
<pre>
"get a(){}"</pre>
"get a(){}"</code></pre>
</td>
</tr>
<tr>
@@ -112,41 +112,41 @@ Object.getOwnPropertyDescriptor({
<pre>
Object.getOwnPropertyDescriptor({
  set a(x){}
}, "a").set</pre>
}, "a").set</code></pre>
</td>
<td>
<pre>
"set a(x){}"</pre>
"set a(x){}"</code></pre>
</td>
</tr>
<tr>
<td>
<pre>
Function.prototype.toString</pre>
Function.prototype.toString</code></pre>
</td>
<td>
<pre>
"function toString() { [native code] }"</pre>
"function toString() { [native code] }"</code></pre>
</td>
</tr>
<tr>
<td>
<pre>
(function f(){}.bind(0))</pre>
(function f(){}.bind(0))</code></pre>
</td>
<td>
<pre>
"function () { [native code] }"</pre>
"function () { [native code] }"</code></pre>
</td>
</tr>
<tr>
<td>
<pre>
Function("a", "b")</pre>
Function("a", "b")</code></pre>
</td>
<td>
<pre>
"function anonymous(a\n) {\nb\n}"</pre>
"function anonymous(a\n) {\nb\n}"</code></pre>
</td>
</tr>
</tbody>