mirror of
https://github.com/fofolee/uTools-Manuals.git
synced 2025-12-18 08:54:32 +08:00
语法高亮,滚动条美化,设置页面调整
This commit is contained in:
@@ -3,48 +3,48 @@
|
||||
<div> </div>
|
||||
<p>JavaScript的 <code><strong>Array</strong></code> 对象是用于构造数组的全局对象,数组是类似于列表的高阶对象。</p>
|
||||
<p><strong>创建数组</strong></p>
|
||||
<pre class="brush: js">var fruits = ['Apple', 'Banana'];
|
||||
<pre><code class="language-javascript">var fruits = ['Apple', 'Banana'];
|
||||
|
||||
console.log(fruits.length);
|
||||
// 2
|
||||
</pre>
|
||||
</code></pre>
|
||||
<p><strong>通过索引访问数组元素</strong></p>
|
||||
<pre class="brush: js">var first = fruits[0];
|
||||
<pre><code class="language-javascript">var first = fruits[0];
|
||||
// Apple
|
||||
|
||||
var last = fruits[fruits.length - 1];
|
||||
// Banana</pre>
|
||||
// Banana</code></pre>
|
||||
<p><strong>遍历数组</strong></p>
|
||||
<pre class="brush: js">fruits.forEach(function (item, index, array) {
|
||||
<pre><code class="language-javascript">fruits.forEach(function (item, index, array) {
|
||||
console.log(item, index);
|
||||
});
|
||||
// Apple 0
|
||||
// Banana 1</pre>
|
||||
// Banana 1</code></pre>
|
||||
<p><strong>添加元素到数组的末尾</strong></p>
|
||||
<pre class="brush: js">var newLength = fruits.push('Orange');
|
||||
// newLength:3; fruits: ["Apple", "Banana", "Orange"]</pre>
|
||||
<pre><code class="language-javascript">var newLength = fruits.push('Orange');
|
||||
// newLength:3; fruits: ["Apple", "Banana", "Orange"]</code></pre>
|
||||
<p><strong>删除数组末尾的元素</strong></p>
|
||||
<pre class="brush: js">var last = fruits.pop(); // remove Orange (from the end)
|
||||
// last: "Orange"; fruits: "Apple", "Banana"];</pre>
|
||||
<pre><code class="language-javascript">var last = fruits.pop(); // remove Orange (from the end)
|
||||
// last: "Orange"; fruits: "Apple", "Banana"];</code></pre>
|
||||
<p><strong>删除数组最前面(头部)的元素</strong></p>
|
||||
<pre class="brush: js">var first = fruits.shift(); // remove Apple from the front
|
||||
// first: "Apple"; fruits: ["Banana"];</pre>
|
||||
<pre><code class="language-javascript">var first = fruits.shift(); // remove Apple from the front
|
||||
// first: "Apple"; fruits: ["Banana"];</code></pre>
|
||||
<p><strong>添加元素到数组的头部</strong></p>
|
||||
<pre class="brush: js">var newLength = fruits.unshift('Strawberry') // add to the front
|
||||
<pre><code class="language-javascript">var newLength = fruits.unshift('Strawberry') // add to the front
|
||||
// ["Strawberry", "Banana"];
|
||||
</pre>
|
||||
</code></pre>
|
||||
<p><strong>找出某个元素在数组中的索引</strong></p>
|
||||
<pre class="brush: js">fruits.push('Mango');
|
||||
<pre><code class="language-javascript">fruits.push('Mango');
|
||||
// ["Strawberry", "Banana", "Mango"]
|
||||
|
||||
var pos = fruits.indexOf('Banana');
|
||||
// 1</pre>
|
||||
// 1</code></pre>
|
||||
<p><strong>通过索引删除某个元素</strong></p>
|
||||
<pre class="brush: js">var removedItem = fruits.splice(pos, 1); // this is how to remove an item
|
||||
<pre><code class="language-javascript">var removedItem = fruits.splice(pos, 1); // this is how to remove an item
|
||||
|
||||
// ["Strawberry", "Mango"]</pre>
|
||||
// ["Strawberry", "Mango"]</code></pre>
|
||||
<p><strong>从一个索引位置删除多个元素</strong></p>
|
||||
<pre class="brush: js">var vegetables = ['Cabbage', 'Turnip', 'Radish', 'Carrot'];
|
||||
<pre><code class="language-javascript">var vegetables = ['Cabbage', 'Turnip', 'Radish', 'Carrot'];
|
||||
console.log(vegetables);
|
||||
// ["Cabbage", "Turnip", "Radish", "Carrot"]
|
||||
|
||||
@@ -58,15 +58,15 @@ console.log(vegetables);
|
||||
// ["Cabbage", "Carrot"] (the original array is changed)
|
||||
|
||||
console.log(removedItems);
|
||||
// ["Turnip", "Radish"]</pre>
|
||||
// ["Turnip", "Radish"]</code></pre>
|
||||
<p><strong>复制一个数组</strong></p>
|
||||
<pre class="brush: js">var shallowCopy = fruits.slice(); // this is how to make a copy
|
||||
// ["Strawberry", "Mango"]</pre>
|
||||
<pre><code class="language-javascript">var shallowCopy = fruits.slice(); // this is how to make a copy
|
||||
// ["Strawberry", "Mango"]</code></pre>
|
||||
<h2 id="Syntax" name="Syntax">语法</h2>
|
||||
<pre class="syntaxbox">[<var>element0</var>, <var>element1</var>, ..., <var>elementN</var>]
|
||||
<pre><code class="language-javascript">[<var>element0</var>, <var>element1</var>, ..., <var>elementN</var>]
|
||||
new Array(<var>element0</var>, <var>element1</var>[, ...[, <var>elementN</var>]])
|
||||
new Array(<var>arrayLength</var>)
|
||||
</pre>
|
||||
</code></pre>
|
||||
<dl>
|
||||
<dt>
|
||||
<h3 id="参数">参数</h3>
|
||||
@@ -81,44 +81,44 @@ new Array(<var>arrayLength</var>)
|
||||
<p>只能用整数作为数组元素的索引,而不能用字符串。后者称为<a class="external" href="https://en.wikipedia.org/wiki/Associative_array" rel="noopener">关联数组</a>。使用非整数并通过<a href="https://developer.mozilla.orgGuide/Working_with_Objects#Objects_and_properties">方括号</a>或<a href="https://developer.mozilla.orgReference/Operators/Property_Accessors">点号</a>来访问或设置数组元素时,所操作的并不是数组列表中的元素,而是数组对象的<a href="https://developer.mozilla.orgData_structures#Properties">属性集合</a>上的变量。数组对象的属性和数组元素列表是分开存储的,并且数组的遍历和修改操作也不能作用于这些命名属性。</p>
|
||||
<h3 id="Accessing_array_elements" name="Accessing_array_elements" style="line-height: 24px; font-size: 1.71428571428571rem;">访问数组元素</h3>
|
||||
<p>JavaScript 数组的索引是从0开始的,第一个元素的索引为0,最后一个元素的索引等于该数组的长度减1。如果指定的索引是一个无效值,JavaScript 数组并不会报错,而是会返回 <code>undefined</code>。</p>
|
||||
<pre class="brush: js language-js">var arr = ['this is the first element', 'this is the second element', 'this is the last element'];
|
||||
<pre><code class="language-js language-js">var arr = ['this is the first element', 'this is the second element', 'this is the last element'];
|
||||
console.log(arr[0]); // 打印 'this is the first element'
|
||||
console.log(arr[1]); // 打印 'this is the second element'
|
||||
console.log(arr[arr.length - 1]); // 打印 'this is the last element'
|
||||
</pre>
|
||||
</code></pre>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 19px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 38px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 57px; background: 0px 0px;"> </div>
|
||||
<p>虽然数组元素可以看做是数组对象的属性,就像 <code>toString</code> 一样,但是下面的写法是错误的,运行时会抛出 <code>SyntaxError</code> 异常,而原因则是使用了非法的属性名:</p>
|
||||
<pre class="brush: js language-js">console.log(arr.0); // a syntax error
|
||||
</pre>
|
||||
<pre><code class="language-js language-js">console.log(arr.0); // a syntax error
|
||||
</code></pre>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<p>并不是 JavaScript 数组有什么特殊之处,而是因为在 JavaScript 中,以数字开头的属性不能用点号引用,必须用方括号。比如,如果一个对象有一个名为 <code>3d</code> 的属性,那么只能用方括号来引用它。下面是具体的例子:</p>
|
||||
<pre class="brush: js language-js">var years = [1950, 1960, 1970, 1980, 1990, 2000, 2010];
|
||||
<pre><code class="language-js language-js">var years = [1950, 1960, 1970, 1980, 1990, 2000, 2010];
|
||||
console.log(years.0); // 语法错误
|
||||
console.log(years[0]); // √
|
||||
</pre>
|
||||
</code></pre>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 19px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 38px; background: 0px 0px;"> </div>
|
||||
<pre class="brush: js language-js">renderer.3d.setTexture(model, 'character.png'); // 语法错误
|
||||
<pre><code class="language-js language-js">renderer.3d.setTexture(model, 'character.png'); // 语法错误
|
||||
renderer['3d'].setTexture(model, 'character.png'); // √
|
||||
</pre>
|
||||
</code></pre>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 19px; background: 0px 0px;"> </div>
|
||||
<p>注意在 <code>3d</code> 那个例子中,引号是必须的。你也可以将数组的索引用引号引起来,比如 <code>years[2]</code> 可以写成 <code>years['2']</code>。 <code>years[2]</code> 中的 2 会被 JavaScript 解释器通过调用 <code>toString</code> 隐式转换成字符串。正因为这样,<code>'2'</code> 和 <code>'02'</code> 在 <code>years</code> 中所引用的可能是不同位置上的元素。而下面这个例子也可能会打印 <code>true</code>:</p>
|
||||
<pre class="brush: js language-js">console.log(years['2'] != years['02']);
|
||||
</pre>
|
||||
<pre><code class="language-js language-js">console.log(years['2'] != years['02']);
|
||||
</code></pre>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<p>类似地,如果对象的属性名称是保留字(最好不要这么做!),那么就只能通过字符串的形式用方括号来访问(从 firefox 40.0a2 开始也支持用点号访问了):</p>
|
||||
<pre class="brush: js language-js">var promise = {
|
||||
<pre><code class="language-js language-js">var promise = {
|
||||
'var' : 'text',
|
||||
'array': [1, 2, 3, 4]
|
||||
};
|
||||
|
||||
console.log(promise['var']);
|
||||
</pre>
|
||||
</code></pre>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 19px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 38px; background: 0px 0px;"> </div>
|
||||
@@ -127,50 +127,50 @@ console.log(promise['var']);
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 95px; background: 0px 0px;"> </div>
|
||||
<h3 id="Relationship_between_length_and_numerical_properties" name="Relationship_between_length_and_numerical_properties" style="line-height: 24px; font-size: 1.71428571428571rem;">length 和数字下标之间的关系</h3>
|
||||
<p>JavaScript 数组的 <a href="Reference/Global_Objects/Array/length" title="length 是Array的实例属性。返回或设置一个数组中的元素个数。该值是一个无符号 32-bit 整数,并且总是大于数组最高项的下标。"><code>length</code></a> 属性和其数字下标之间有着紧密的联系。数组内置的几个方法(例如 <a href="Reference/Global_Objects/Array/join" title="join() 方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。"><code>join</code></a>、<a href="Reference/Global_Objects/Array/slice" title="The source for this interactive demo is stored in a GitHub repository. If you'd like to contribute to the interactive demo project, please clone https://github.com/mdn/interactive-examples and send us a pull request."><code>slice</code></a>、<a href="Reference/Global_Objects/Array/indexOf" title="indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。"><code>indexOf</code></a> 等)都会考虑 <a href="Reference/Global_Objects/Array/length" title="length 是Array的实例属性。返回或设置一个数组中的元素个数。该值是一个无符号 32-bit 整数,并且总是大于数组最高项的下标。"><code>length</code></a> 的值。另外还有一些方法(例如 <a href="Reference/Global_Objects/Array/push" title="push() 方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。"><code>push</code></a>、<a href="Reference/Global_Objects/Array/splice" title="splice() 方法通过删除或替换现有元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。"><code>splice</code></a> 等)还会改变 <a href="Reference/Global_Objects/Array/length" title="length 是Array的实例属性。返回或设置一个数组中的元素个数。该值是一个无符号 32-bit 整数,并且总是大于数组最高项的下标。"><code>length</code></a> 的值。</p>
|
||||
<pre class="brush: js language-js">var fruits = [];
|
||||
<pre><code class="language-js language-js">var fruits = [];
|
||||
fruits.push('banana', 'apple', 'peach');
|
||||
|
||||
console.log(fruits.length); // 3
|
||||
</pre>
|
||||
</code></pre>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 19px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 38px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 57px; background: 0px 0px;"> </div>
|
||||
<p>使用一个合法的下标为数组元素赋值,并且该下标超出了当前数组的大小的时候,解释器会同时修改 <a href="Reference/Global_Objects/Array/length" title="length 是Array的实例属性。返回或设置一个数组中的元素个数。该值是一个无符号 32-bit 整数,并且总是大于数组最高项的下标。"><code>length</code></a> 的值:</p>
|
||||
<pre class="brush: js language-js">fruits[5] = 'mango';
|
||||
<pre><code class="language-js language-js">fruits[5] = 'mango';
|
||||
console.log(fruits[5]); // 'mango'
|
||||
console.log(Object.keys(fruits)); // ['0', '1', '2', '5']
|
||||
console.log(fruits.length); // 6
|
||||
</pre>
|
||||
</code></pre>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 19px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 38px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 57px; background: 0px 0px;"> </div>
|
||||
<p>也可以显式地给 <a href="Reference/Global_Objects/Array/length" title="length 是Array的实例属性。返回或设置一个数组中的元素个数。该值是一个无符号 32-bit 整数,并且总是大于数组最高项的下标。"><code>length</code></a> 赋一个更大的值:</p>
|
||||
<pre class="brush: js language-js">fruits.length = 10;
|
||||
<pre><code class="language-js language-js">fruits.length = 10;
|
||||
console.log(Object.keys(fruits)); // ['0', '1', '2', '5']
|
||||
console.log(fruits.length); // 10
|
||||
</pre>
|
||||
</code></pre>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 19px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 38px; background: 0px 0px;"> </div>
|
||||
<p>而为 <a href="Reference/Global_Objects/Array/length" title="length 是Array的实例属性。返回或设置一个数组中的元素个数。该值是一个无符号 32-bit 整数,并且总是大于数组最高项的下标。"><code>length</code></a> 赋一个更小的值则会删掉一部分元素:</p>
|
||||
<pre class="brush: js language-js">fruits.length = 2;
|
||||
<pre><code class="language-js language-js">fruits.length = 2;
|
||||
console.log(Object.keys(fruits)); // ['0', '1']
|
||||
console.log(fruits.length); // 2</pre>
|
||||
console.log(fruits.length); // 2</code></pre>
|
||||
<p>这一节的内容在 <a href="Reference/Global_Objects/Array/length" title="length 是Array的实例属性。返回或设置一个数组中的元素个数。该值是一个无符号 32-bit 整数,并且总是大于数组最高项的下标。"><code>Array.length</code></a> 中有更详细的介绍。</p>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 0px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 19px; background: 0px 0px;"> </div>
|
||||
<div class="line-number" style="margin-top: 1em; position: absolute; left: 0px; right: 0px; line-height: inherit; top: 38px; background: 0px 0px;"> </div>
|
||||
<h3 id="Creating_an_array_using_the_result_of_a_match" name="Creating_an_array_using_the_result_of_a_match">正则匹配结果所返回的数组</h3>
|
||||
<p>使用正则表达式匹配字符串可以得到一个数组。这个数组中包含本次匹配的相关信息和匹配结果。<a href="Reference/Global_Objects/RegExp/exec" title="exec() 方法在一个指定字符串中执行一个搜索匹配。返回一个结果数组或 null。"><code>RegExp.exec</code></a>、<a href="Reference/Global_Objects/String/match" title="match() 方法检索返回一个字符串匹配正则表达式的的结果。"><code>String.match</code></a>、<a href="Reference/Global_Objects/String/replace" title="replace() 方法返回一个由替换值(replacement)替换一些或所有匹配的模式(pattern)后的新字符串。模式可以是一个字符串或者一个正则表达式,替换值可以是一个字符串或者一个每次匹配都要调用的回调函数。"><code>String.replace</code></a> 都会返回这样的数组。看下面的例子和例子下面的表格:</p>
|
||||
<pre class="brush: js">// 匹配1个 d 后面紧跟着至少1个 b,再后面又跟着1个 d 的子串,
|
||||
<pre><code class="language-javascript">// 匹配1个 d 后面紧跟着至少1个 b,再后面又跟着1个 d 的子串,
|
||||
// 并且需要记住子串中匹配到的 b 和最后的 d (通过正则表达式中的分组),
|
||||
// 同时在匹配时忽略大小写
|
||||
|
||||
myRe = /d(b+)(d)/i;
|
||||
myArray = myRe.exec("cdbBdbsbz");
|
||||
</pre>
|
||||
</code></pre>
|
||||
<p>该正则匹配返回的数组包含以下属性和元素:</p>
|
||||
<table class="fullwidth-table">
|
||||
<tbody>
|
||||
@@ -309,35 +309,35 @@ myArray = myRe.exec("cdbBdbsbz");
|
||||
<p><strong>泛型方法是非标准,并且已弃用,有可能不久就会移除。</strong> 需注意的是此方法同时有跨浏览器问题. 但是 <a class="external" href="https://github.com/plusdude/array-generics" rel="noopener">Github上有可用的shim</a>。</p>
|
||||
</div>
|
||||
<p>有时我们会希望在字符串或其他类数组对象上使用数组所提供的方法(如函数的 <a href="Reference/Functions/arguments" title="arguments 是一个对应于传递给函数的参数的类数组对象。">arguments</a>)。此时你可以把一个字符串作为一个字符数组来看待(也就是说,把非数组以某种方式看成是一个数组)。比如,可以用下面的方法来检查变量 <code>str</code> 中的字符是否都是字母:</p>
|
||||
<pre class="brush: js">function isLetter(character) {
|
||||
<pre><code class="language-javascript">function isLetter(character) {
|
||||
return character >= 'a' && character <= 'z';
|
||||
}
|
||||
|
||||
if (Array.prototype.every.call(str, isLetter)) {
|
||||
console.log("The string '" + str + "' contains only letters!");
|
||||
}</pre>
|
||||
}</code></pre>
|
||||
<p>这种方法能够行得通,但不够简洁,JavaScript 1.6 中引入了一个泛型化的简写形式:</p>
|
||||
<pre class="brush: js">if (Array.every(str, isLetter)) {
|
||||
<pre><code class="language-javascript">if (Array.every(str, isLetter)) {
|
||||
console.log("The string '" + str + "' contains only letters!");
|
||||
}</pre>
|
||||
}</code></pre>
|
||||
<p><a href="Reference/Global_Objects/String" title="String 全局对象是一个用于字符串或一个字符序列的构造函数。"><code>String</code></a> 对象也包含一些泛型方法,见: <a href="Reference/Global_Objects/String#String_generic_methods" title="String 全局对象是一个用于字符串或一个字符序列的构造函数。">Generics</a>。</p>
|
||||
<p>注意,这些并不属于 ECMAScript 标准,也不能在非 Gecko 浏览器中使用。你可以用标准方法 <a href="Reference/Global_Objects/Array/from" title="Array.from() 方法从一个类似数组或可迭代对象中创建一个新的数组实例。"><code>Array.from()</code></a> 来替代上面的写法, <code>from</code> 方法可以将一个对象转换为真正的数组(虽然老的浏览器可能不支持):</p>
|
||||
<pre class="brush: js"><code>if (Array.from(str).every(isLetter)) {
|
||||
<pre><code class="language-javascript"><code>if (Array.from(str).every(isLetter)) {
|
||||
console.log("The string '" + str + "' contains only letters!");
|
||||
}</code></pre>
|
||||
}</code></code></pre>
|
||||
<h2 id="Examples" name="Examples">示例</h2>
|
||||
<h3 id="Creating_an_array" name="Creating_an_array">创建数组</h3>
|
||||
<p>下面这个例子创建了一个长度为 0 的数组 <code>msgArray</code>,然后给 <code>msgArray[0]</code> 和 <code>msgArray[99]</code> 赋值,从而导致数组长度变为了 100。</p>
|
||||
<pre class="brush: js">var msgArray = [];
|
||||
<pre><code class="language-javascript">var msgArray = [];
|
||||
msgArray[0] = 'Hello';
|
||||
msgArray[99] = 'world';
|
||||
|
||||
if (msgArray.length === 100) {
|
||||
console.log('The length is 100.');
|
||||
}</pre>
|
||||
}</code></pre>
|
||||
<h3 id="Creating_a_two-dimensional_array" name="Creating_a_two-dimensional_array">创建二维数组</h3>
|
||||
<p>下面的例子创建了一个代表国际象棋棋盘的二维数组,然后将 (6, 4) 上的 Pawn (卒)拷贝到 (4, 4) 位置,而原本 (6, 4) 位置则被设置为空格。</p>
|
||||
<pre class="brush: js">var board = [
|
||||
<pre><code class="language-javascript">var board = [
|
||||
['R','N','B','Q','K','B','N','R'],
|
||||
['P','P','P','P','P','P','P','P'],
|
||||
[' ',' ',' ',' ',' ',' ',' ',' '],
|
||||
@@ -353,9 +353,9 @@ console.log(board.join('\n') + '\n\n');
|
||||
board[4][4] = board[6][4];
|
||||
board[6][4] = ' ';
|
||||
console.log(board.join('\n'));
|
||||
</pre>
|
||||
</code></pre>
|
||||
<p>下面是输出:</p>
|
||||
<pre class="brush: js">R,N,B,Q,K,B,N,R
|
||||
<pre><code class="language-javascript">R,N,B,Q,K,B,N,R
|
||||
P,P,P,P,P,P,P,P
|
||||
, , , , , , ,
|
||||
, , , , , , ,
|
||||
@@ -372,16 +372,16 @@ P,P,P,P,P,P,P,P
|
||||
, , , , , , ,
|
||||
p,p,p,p, ,p,p,p
|
||||
r,n,b,q,k,b,n,r
|
||||
</pre>
|
||||
</code></pre>
|
||||
<h3 id="用数组将一组值以表格形式显示">用数组将一组值以表格形式显示</h3>
|
||||
<pre class="brush: js"><code>values = [];
|
||||
<pre><code class="language-javascript"><code>values = [];
|
||||
for (var x = 0; x < 10; x++){
|
||||
values.push([
|
||||
2 ** x,
|
||||
2 * x ** 2
|
||||
])
|
||||
};
|
||||
console.table(values)</code></pre>
|
||||
console.table(values)</code></code></pre>
|
||||
<p>结果为:</p>
|
||||
<pre><code>0 1 0
|
||||
1 2 2
|
||||
@@ -392,7 +392,7 @@ console.table(values)</code></pre>
|
||||
6 64 72
|
||||
7 128 98
|
||||
8 256 128
|
||||
9 512 162</code></pre>
|
||||
9 512 162</code></code></pre>
|
||||
<p>(第一列为索引)</p>
|
||||
<h2 id="规范">规范</h2>
|
||||
<table class=" standard-table">
|
||||
|
||||
Reference in New Issue
Block a user