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

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

@@ -6,7 +6,7 @@
</div>
<div><iframe class="interactive interactive-js" frameborder="0" height="250" src="https://interactive-examples.mdn.mozilla.net/pages/js/array-some.html" width="100%"></iframe></div>
<h2 id="Syntax" name="Syntax">语法</h2>
<pre class="syntaxbox"><code><em>arr</em>.some(<em>callback(element[, index[, array]])[, thisArg]</em>)</code></pre>
<pre><code class="language-javascript"><code><em>arr</em>.some(<em>callback(element[, index[, array]])[, thisArg]</em>)</code></code></pre>
<h3 id="Parameters" name="Parameters">参数</h3>
<dl>
<dt><code>callback</code></dt>
@@ -35,19 +35,19 @@
<h3 id="Example:_Testing_size_of_all_array_elements" name="Example:_Testing_size_of_all_array_elements">测试数组元素的值</h3>
<p>下面的例子检测在数组中是否有元素大于 10。</p>
<p> </p>
<pre class="brush: js">function isBiggerThan10(element, index, array) {
<pre><code class="language-javascript">function isBiggerThan10(element, index, array) {
return element &gt; 10;
}
[2, 5, 8, 1, 4].some(isBiggerThan10); // false
[12, 5, 8, 1, 4].some(isBiggerThan10); // true</pre>
[12, 5, 8, 1, 4].some(isBiggerThan10); // true</code></pre>
<h3 id="使用箭头函数测试数组元素的值">使用箭头函数测试数组元素的值</h3>
<p><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Arrow_functions">箭头函数</a> 可以通过更简洁的语法实现相同的用例.</p>
<pre class="brush: js"><code>[2, 5, 8, 1, 4].some(x =&gt; x &gt; 10); // false
[12, 5, 8, 1, 4].some(x =&gt; x &gt; 10); // true</code></pre>
<pre><code class="language-javascript"><code>[2, 5, 8, 1, 4].some(x =&gt; x &gt; 10); // false
[12, 5, 8, 1, 4].some(x =&gt; x &gt; 10); // true</code></code></pre>
<h3 id="判断数组元素中是否存在某个值">判断数组元素中是否存在某个值</h3>
<p>此例中为模仿 <code>includes()</code>  方法, 若元素在数组中存在, 则回调函数返回值为 <code>true</code> :</p>
<pre class="brush: js">var fruits = ['apple', 'banana', 'mango', 'guava'];
<pre><code class="language-javascript">var fruits = ['apple', 'banana', 'mango', 'guava'];
function checkAvailability(arr, val) {
return arr.some(function(arrVal) {
@@ -56,18 +56,18 @@ function checkAvailability(arr, val) {
}
checkAvailability(fruits, 'kela'); // false
checkAvailability(fruits, 'banana'); // true</pre>
checkAvailability(fruits, 'banana'); // true</code></pre>
<h3 id="使用箭头函数判断数组元素中是否存在某个值">使用箭头函数判断数组元素中是否存在某个值</h3>
<pre class="brush: js">var fruits = ['apple', 'banana', 'mango', 'guava'];
<pre><code class="language-javascript">var fruits = ['apple', 'banana', 'mango', 'guava'];
function checkAvailability(arr, val) {
return arr.some(arrVal =&gt; val === arrVal);
}
checkAvailability(fruits, 'kela'); // false
checkAvailability(fruits, 'banana'); // true</pre>
checkAvailability(fruits, 'banana'); // true</code></pre>
<h3 id="将任意值转换为布尔类型">将任意值转换为布尔类型</h3>
<pre class="brush: js">var TRUTHY_VALUES = [true, 'true', 1];
<pre><code class="language-javascript">var TRUTHY_VALUES = [true, 'true', 1];
function getBoolean(value) {
'use strict';
@@ -85,10 +85,10 @@ getBoolean(false); // false
getBoolean('false'); // false
getBoolean(1); // true
getBoolean('true'); // true
</pre>
</code></pre>
<h2 id="Compatibility" name="Compatibility">Polyfill</h2>
<p>在第 5 版时,<code>some()</code> 被添加进 ECMA-262 标准这样导致某些实现环境可能不支持它。你可以把下面的代码插入到脚本的开头来解决此问题从而允许在那些没有原生支持它的实现环境中使用它。该算法是 ECMA-262 第 5 版中指定的算法,假定 <code>Object </code>和 <code>TypeError</code> 拥有他们的初始值,且 <code>fun.call</code> 等价于 <code><a href="Reference/Global_Objects/Function/call" title="call() 方法调用一个函数, 其具有一个指定的this值和分别地提供的参数(参数的列表)。"><code>Function.prototype.call</code></a></code></p>
<pre class="brush: js">// Production steps of ECMA-262, Edition 5, 15.4.4.17
<pre><code class="language-javascript">// Production steps of ECMA-262, Edition 5, 15.4.4.17
// Reference: http://es5.github.io/#x15.4.4.17
if (!Array.prototype.some) {
Array.prototype.some = function(fun/*, thisArg*/) {
@@ -114,7 +114,7 @@ if (!Array.prototype.some) {
return false;
};
}</pre>
}</code></pre>
<h2 id="规范">规范</h2>
<table class="standard-table">
<tbody>