mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-12-15 23:37:25 +08:00
语法高亮,滚动条美化,设置页面调整
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
<div style="margin: 0px; padding: 0px; border: 0px; color: rgb(77, 78, 83); font-family: 'Open Sans', sans-serif; font-size: 14px; line-height: 21px; background-color: rgb(255, 255, 255);"></div>
|
||||
<p><code><strong>valueOf()</strong></code> 方法返回指定对象的原始值。</p>
|
||||
<h2 id="Syntax" name="Syntax">语法</h2>
|
||||
<pre>object.valueOf()</pre>
|
||||
<pre>object.valueOf()</code></pre>
|
||||
<h3 id="返回值">返回值</h3>
|
||||
<p>返回值为该对象的原始值。</p>
|
||||
<h2 id="Description" name="Description">描述</h2>
|
||||
@@ -56,17 +56,17 @@
|
||||
<h3 id="覆盖自定义对象的_valueOf方法">覆盖自定义对象的 <code>valueOf</code>方法</h3>
|
||||
<p>你可以创建一个取代 <code>valueOf</code>方法的函数,你的方法必须不能传入参数。</p>
|
||||
<p>假设你有个对象叫 <code>MyNumberType</code>而你想为它创建一个<code>valueOf</code>方法。下面的代码为<code>valueOf</code>方法赋予了一个自定义函数:</p>
|
||||
<pre class="brush: js">MyNumberType.prototype.valueOf = function() { return customPrimitiveValue; };</pre>
|
||||
<pre><code class="language-javascript">MyNumberType.prototype.valueOf = function() { return customPrimitiveValue; };</code></pre>
|
||||
<div class="line-number" style="margin: 1em 0px 0px; border: 0px; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<p>有了这样的一个方法,下一次每当<code>MyNumberType</code>要被转换为原始类型值时,JavaScript 在此之前会自动调用自定义的<code>valueOf</code>方法。</p>
|
||||
<p><code>valueOf</code>方法一般都会被 JavaScript 自动调用,但你也可以像下面代码那样自己调用:</p>
|
||||
<pre class="brush: js">myNumberType.valueOf()</pre>
|
||||
<pre><code class="language-javascript">myNumberType.valueOf()</code></pre>
|
||||
<div class="note">
|
||||
<p dir="ltr"><strong style="border: 0px; margin: 0px; padding: 0px;">注意:</strong>字符串上下文中的对象通过 <a href="Reference/Global_Objects/Object/toString" title="toString() 方法返回一个表示该对象的字符串。"><code>toString()</code></a>方法转换,这与使用<code>valueOf</code>转换为原始字符串的<a href="Reference/String" title="此页面仍未被本地化, 期待您的翻译!"><code>String</code></a>对象不同。所有对象都能转换成一个“<code>[object <em>类型</em>]</code>”这种格式的字符串。但是很多对象不能转换为数字,布尔或函数。</p>
|
||||
</div>
|
||||
<h2 id="示例">示例</h2>
|
||||
<h3 id="使用_valueOf">使用 <code>valueOf</code></h3>
|
||||
<pre class="brush: js">// Array:返回数组对象本身
|
||||
<pre><code class="language-javascript">// Array:返回数组对象本身
|
||||
var array = ["ABC", true, 12, -5];
|
||||
console.log(array.valueOf() === array); // true
|
||||
|
||||
@@ -112,10 +112,10 @@ console.log( str.valueOf() === str ); // true
|
||||
// new一个字符串对象
|
||||
var str2 = new String("http://www.xyz.com");
|
||||
// 两者的值相等,但不全等,因为类型不同,前者为string类型,后者为object类型
|
||||
console.log( str2.valueOf() === str2 ); // false</pre>
|
||||
console.log( str2.valueOf() === str2 ); // false</code></pre>
|
||||
<p> </p>
|
||||
<h3 id="改写_.prototype.valueof">改写 .prototype.valueof</h3>
|
||||
<pre class="brush: js line-numbers language-js"><code class="language-js"><span class="keyword token">function</span> <span class="function token">MyNumberType</span><span class="punctuation token">(</span>n<span class="punctuation token">)</span> <span class="punctuation token">{</span>
|
||||
<pre><code class="language-javascript"><code class="language-js"><span class="keyword token">function</span> <span class="function token">MyNumberType</span><span class="punctuation token">(</span>n<span class="punctuation token">)</span> <span class="punctuation token">{</span>
|
||||
<span class="keyword token">this</span><span class="punctuation token">.</span>number <span class="operator token">=</span> n<span class="punctuation token">;</span>
|
||||
<span class="punctuation token">}</span>
|
||||
|
||||
@@ -124,7 +124,7 @@ MyNumberType<span class="punctuation token">.</span>prototype<span class="punctu
|
||||
<span class="punctuation token">}</span><span class="punctuation token">;</span>
|
||||
|
||||
<span class="keyword token">var</span> myObj <span class="operator token">=</span> <span class="keyword token">new</span> <span class="class-name token">MyNumberType</span><span class="punctuation token">(</span><span class="number token">4</span><span class="punctuation token">)</span><span class="punctuation token">;</span>
|
||||
myObj <span class="operator token">+</span> <span class="number token">3</span><span class="punctuation token">;</span> <span class="comment token">// 7</span></code></pre>
|
||||
myObj <span class="operator token">+</span> <span class="number token">3</span><span class="punctuation token">;</span> <span class="comment token">// 7</span></code></code></pre>
|
||||
<h2 id="规范">规范</h2>
|
||||
<table class="standard-table">
|
||||
<tbody>
|
||||
|
||||
Reference in New Issue
Block a user