TypeScript Array(数组)
<h1>TypeScript Array(数组)</h1><p>数组对象是使用单独的变量名来存储一系列的值。</p>
<p>数组非常常用。</p>
<p>假如你有一组数据(例如:网站名字),存在单独变量如下所示:</p>
<div class="example">
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> site1="Google"; <span style="color: rgba(0, 0, 255, 1)">var</span> site2="Runoob"; <span style="color: rgba(0, 0, 255, 1)">var</span> site3="Taobao";</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>如果有 10 个、100 个这种方式就变的很不实用,这时我们可以使用数组来解决:</p>
<div class="example">
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> sites:string[]; sites = ["Google","Runoob","Taobao"]</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>这样看起来就简洁多了。</p>
<p>TypeScript 声明数组的语法格式如下所示:</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> array_name[:datatype]; <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">声明 </span>
array_name = <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)">初始化</span></pre>
</div>
<p> </p>
<p>或者直接在声明时初始化:</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> array_name[:data type] = </pre>
</div>
<p> </p>
<p>如果数组声明时未设置类型,则会被认为是 any 类型,在初始化时根据第一个元素的类型来推断数组的类型。</p>
<h3>实例</h3>
<p>创建一个 number 类型的数组:</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> numlist:number[] = </pre>
</div>
<p> </p>
<p>整个数组结构如下所示:</p>
<p><img src="https://www.runoob.com/wp-content/uploads/2019/01/declaring_and_initializing_arrays.png"></p>
<p>索引值第一个为 0,我们可以根据索引值来访问数组元素:</p>
<div class="example">
<h2 class="example">TypeScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> sites:string[]; sites = ["Google","Runoob","Taobao"] console.log(sites); console.log(sites);</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>编译以上代码,得到以下 JavaScript 代码:</p>
<div class="example">
<h2 class="example">JavaScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> sites; sites = ["Google", "Runoob", "Taobao"]; console.log(sites); console.log(sites);</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>输出结果为:</p>
<pre class="prettyprint prettyprinted"><span class="typ">Google<span class="pln">
<span class="typ">Runoob</span></span></span></pre>
<p>以下实例我们在声明时直接初始化:</p>
<div class="example">
<h2 class="example">TypeScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> nums:number[] = console.log(nums); console.log(nums); console.log(nums); console.log(nums);</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>编译以上代码,得到以下 JavaScript 代码:</p>
<div class="example">
<h2 class="example">JavaScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> nums = ; console.log(nums); console.log(nums); console.log(nums); console.log(nums);</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>输出结果为:</p>
<pre class="prettyprint prettyprinted"><span class="lit">1<span class="pln">
<span class="lit">2<span class="pln">
<span class="lit">3<span class="pln">
<span class="lit">4</span></span></span></span></span></span></span></pre>
<hr>
<h2>Array 对象</h2>
<p>我们也可以使用 Array 对象创建数组。</p>
<p>Array 对象的构造函数接受以下两种值:</p>
<ul>
<li>表示数组大小的数值。</li>
<li>初始化的数组列表,元素使用逗号分隔值。</li>
</ul>
<h3>实例</h3>
<p>指定数组初始化大小:</p>
<div class="example">
<h2 class="example">TypeScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> arr_names:number[] = <span style="color: rgba(0, 0, 255, 1)">new</span> Array(4) <span style="color: rgba(0, 0, 255, 1)">for</span>(<span style="color: rgba(0, 0, 255, 1)">var</span> i = 0; i<arr_names.length; i++) { arr_names = i * 2 console.log(arr_names) }</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>编译以上代码,得到以下 JavaScript 代码:</p>
<div class="example">
<h2 class="example">JavaScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> arr_names = <span style="color: rgba(0, 0, 255, 1)">new</span> Array(4); <span style="color: rgba(0, 0, 255, 1)">for</span> (<span style="color: rgba(0, 0, 255, 1)">var</span> i = 0; i < arr_names.length; i++) { arr_names = i * 2; console.log(arr_names); }</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>输出结果为:</p>
<pre class="prettyprint prettyprinted"><span class="lit">0<span class="pln">
<span class="lit">2<span class="pln">
<span class="lit">4<span class="pln">
<span class="lit">6</span></span></span></span></span></span></span></pre>
<p>以下实例我们直接初始化数组元素:</p>
<div class="example">
<h2 class="example">TypeScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> sites:string[] = <span style="color: rgba(0, 0, 255, 1)">new</span> Array("Google","Runoob","Taobao","Facebook") <span style="color: rgba(0, 0, 255, 1)">for</span>(<span style="color: rgba(0, 0, 255, 1)">var</span> i = 0;i<sites.length;i++) { console.log(sites) }</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>编译以上代码,得到以下 JavaScript 代码:</p>
<div class="example">
<h2 class="example">JavaScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> sites = <span style="color: rgba(0, 0, 255, 1)">new</span> Array("Google", "Runoob", "Taobao", "Facebook"); <span style="color: rgba(0, 0, 255, 1)">for</span> (<span style="color: rgba(0, 0, 255, 1)">var</span> i = 0; i < sites.length; i++) { console.log(sites); }</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>输出结果为:</p>
<pre class="prettyprint prettyprinted"><span class="typ">Google<span class="pln">
<span class="typ">Runoob<span class="pln">
<span class="typ">Taobao<span class="pln">
<span class="typ">Facebook</span></span></span></span></span></span></span></pre>
<hr>
<h2>数组解构</h2>
<p>我们也可以把数组元素赋值给变量,如下所示:</p>
<div class="example">
<h2 class="example">TypeScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> arr:number[] = <span style="color: rgba(0, 0, 255, 1)">var</span> = arr <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 将数组的两个元素赋值给变量 x 和 y console.log(x) console.log(y)</span></pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>编译以上代码,得到以下 JavaScript 代码:</p>
<div class="example">
<h2 class="example">JavaScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> arr = ; <span style="color: rgba(0, 0, 255, 1)">var</span> x = arr, y = arr; <span style="color: rgba(0, 128, 0, 1)">//</span><span style="color: rgba(0, 128, 0, 1)"> 将数组的两个元素赋值给变量 x 和 y console.log(x); console.log(y);</span></pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>输出结果为:</p>
<pre class="prettyprint prettyprinted"><span class="lit">12<span class="pln">
<span class="lit">13</span></span></span></pre>
<hr>
<h2>数组迭代</h2>
<p>我们可以使用 for 语句来循环输出数组的各个元素:</p>
<div class="example">
<h2 class="example">TypeScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> j:any; <span style="color: rgba(0, 0, 255, 1)">var</span> nums:number[] = <span style="color: rgba(0, 0, 255, 1)">for</span>(j <span style="color: rgba(0, 0, 255, 1)">in</span> nums) { console.log(nums) }</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>编译以上代码,得到以下 JavaScript 代码:</p>
<div class="example">
<h2 class="example">JavaScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> j; <span style="color: rgba(0, 0, 255, 1)">var</span> nums = ; <span style="color: rgba(0, 0, 255, 1)">for</span> (j <span style="color: rgba(0, 0, 255, 1)">in</span> nums) { console.log(nums); }</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>输出结果为:</p>
<pre class="prettyprint prettyprinted"><span class="lit">1001<span class="pln">
<span class="lit">1002<span class="pln">
<span class="lit">1003<span class="pln">
<span class="lit">1004</span></span></span></span></span></span></span></pre>
<hr>
<h2>多维数组</h2>
<p>一个数组的元素可以是另外一个数组,这样就构成了多维数组(Multi-dimensional Array)。</p>
<p>最简单的多维数组是二维数组,定义方式如下:</p>
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> arr_name:datatype[][]=[ , ]</pre>
</div>
<p> </p>
<h3>实例</h3>
<p>定义一个二维数组,每一个维度的数组有三个元素。</p>
<p><img src="https://www.runoob.com/wp-content/uploads/2019/01/multidimensional_arrays.png"></p>
<div class="example">
<h2 class="example">TypeScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> multi:number[][] = [,] console.log(multi) console.log(multi) console.log(multi) console.log(multi) console.log(multi) console.log(multi)</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>编译以上代码,得到以下 JavaScript 代码:</p>
<div class="example">
<h2 class="example">JavaScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> multi = [, ]; console.log(multi); console.log(multi); console.log(multi); console.log(multi); console.log(multi); console.log(multi);</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>输出结果为:</p>
<pre class="prettyprint prettyprinted"><span class="lit">1<span class="pln">
<span class="lit">2<span class="pln">
<span class="lit">3<span class="pln">
<span class="lit">23<span class="pln">
<span class="lit">24<span class="pln">
<span class="lit">25</span></span></span></span></span></span></span></span></span></span></span></pre>
<hr>
<h2>数组在函数中的使用</h2>
<h3>作为参数传递给函数</h3>
<div class="example">
<h2 class="example">TypeScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> sites:string[] = <span style="color: rgba(0, 0, 255, 1)">new</span> Array("Google","Runoob","Taobao","Facebook") <span style="color: rgba(0, 0, 255, 1)">function</span> disp(arr_sites:string[]) { <span style="color: rgba(0, 0, 255, 1)">for</span>(<span style="color: rgba(0, 0, 255, 1)">var</span> i = 0;i<arr_sites.length;i++) { console.log(arr_sites) } } disp(sites);</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>编译以上代码,得到以下 JavaScript 代码:</p>
<div class="example">
<h2 class="example">JavaScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">var</span> sites = <span style="color: rgba(0, 0, 255, 1)">new</span> Array("Google", "Runoob", "Taobao", "Facebook"); <span style="color: rgba(0, 0, 255, 1)">function</span> disp(arr_sites) { <span style="color: rgba(0, 0, 255, 1)">for</span> (<span style="color: rgba(0, 0, 255, 1)">var</span> i = 0; i < arr_sites.length; i++) { console.log(arr_sites); } } disp(sites);</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>输出结果为:</p>
<pre class="prettyprint prettyprinted"><span class="typ">Google<span class="pln">
<span class="typ">Runoob<span class="pln">
<span class="typ">Taobao<span class="pln">
<span class="typ">Facebook</span></span></span></span></span></span></span></pre>
<h3>作为函数的返回值</h3>
<div class="example">
<h2 class="example">TypeScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">function</span> disp():string[] { <span style="color: rgba(0, 0, 255, 1)">return</span> <span style="color: rgba(0, 0, 255, 1)">new</span> Array("Google", "Runoob", "Taobao", "Facebook"); } <span style="color: rgba(0, 0, 255, 1)">var</span> sites:string[] = disp() <span style="color: rgba(0, 0, 255, 1)">for</span>(<span style="color: rgba(0, 0, 255, 1)">var</span> i <span style="color: rgba(0, 0, 255, 1)">in</span> sites) { console.log(sites) }</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>编译以上代码,得到以下 JavaScript 代码:</p>
<div class="example">
<h2 class="example">JavaScript</h2>
<div class="example_code">
<div class="hl-main">
<div class="cnblogs_code">
<pre><span style="color: rgba(0, 0, 255, 1)">function</span> disp() { <span style="color: rgba(0, 0, 255, 1)">return</span> <span style="color: rgba(0, 0, 255, 1)">new</span> Array("Google", "Runoob", "Taobao", "Facebook"); } <span style="color: rgba(0, 0, 255, 1)">var</span> sites = disp(); <span style="color: rgba(0, 0, 255, 1)">for</span> (<span style="color: rgba(0, 0, 255, 1)">var</span> i <span style="color: rgba(0, 0, 255, 1)">in</span> sites) { console.log(sites); }</pre>
</div>
<p> </p>
</div>
</div>
</div>
<p>输出结果为:</p>
<pre class="prettyprint prettyprinted"><span class="typ">Google<span class="pln">
<span class="typ">Runoob<span class="pln">
<span class="typ">Taobao<span class="pln">
<span class="typ">Facebook</span></span></span></span></span></span></span></pre>
<hr>
<h2>数组方法</h2>
<p>下表列出了一些常用的数组方法:</p>
<table class="reference" style="float: left">
<tbody>
<tr><th>序号</th><th>方法 & 描述</th><th>实例</th></tr>
<tr>
<td>1.</td>
<td>concat()
<p>连接两个或更多的数组,并返回结果。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> alpha <span class="pun">=<span class="pln"> <span class="pun">[<span class="str">"a"<span class="pun">,<span class="pln"> <span class="str">"b"<span class="pun">,<span class="pln"> <span class="str">"c"<span class="pun">];<span class="pln">
<span class="kwd">var<span class="pln"> numeric <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">2<span class="pun">,<span class="pln"> <span class="lit">3<span class="pun">];<span class="pln">
<span class="kwd">var<span class="pln"> alphaNumeric <span class="pun">=<span class="pln"> alpha<span class="pun">.<span class="pln">concat<span class="pun">(<span class="pln">numeric<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"alphaNumeric : "<span class="pln"> <span class="pun">+<span class="pln"> alphaNumeric <span class="pun">);<span class="pln"> <span class="com">// a,b,c,1,2,3 </span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>2.</td>
<td>every()
<p>检测数值元素的每个元素是否都符合条件。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">function<span class="pln"> isBigEnough<span class="pun">(<span class="pln">element<span class="pun">,<span class="pln"> index<span class="pun">,<span class="pln"> array<span class="pun">)<span class="pln"> <span class="pun">{<span class="pln">
<span class="kwd">return<span class="pln"> <span class="pun">(<span class="pln">element <span class="pun">>=<span class="pln"> <span class="lit">10<span class="pun">);<span class="pln">
<span class="pun">}<span class="pln">
<span class="kwd">var<span class="pln"> passed <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">12<span class="pun">,<span class="pln"> <span class="lit">5<span class="pun">,<span class="pln"> <span class="lit">8<span class="pun">,<span class="pln"> <span class="lit">130<span class="pun">,<span class="pln"> <span class="lit">44<span class="pun">].<span class="pln">every<span class="pun">(<span class="pln">isBigEnough<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Test Value : "<span class="pln"> <span class="pun">+<span class="pln"> passed <span class="pun">);<span class="pln"> <span class="com">// false</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>3.</td>
<td>filter()
<p>检测数值元素,并返回符合条件所有元素的数组。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">function<span class="pln"> isBigEnough<span class="pun">(<span class="pln">element<span class="pun">,<span class="pln"> index<span class="pun">,<span class="pln"> array<span class="pun">)<span class="pln"> <span class="pun">{<span class="pln">
<span class="kwd">return<span class="pln"> <span class="pun">(<span class="pln">element <span class="pun">>=<span class="pln"> <span class="lit">10<span class="pun">);<span class="pln">
<span class="pun">}<span class="pln">
<span class="kwd">var<span class="pln"> passed <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">12<span class="pun">,<span class="pln"> <span class="lit">5<span class="pun">,<span class="pln"> <span class="lit">8<span class="pun">,<span class="pln"> <span class="lit">130<span class="pun">,<span class="pln"> <span class="lit">44<span class="pun">].<span class="pln">filter<span class="pun">(<span class="pln">isBigEnough<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Test Value : "<span class="pln"> <span class="pun">+<span class="pln"> passed <span class="pun">);<span class="pln"> <span class="com">// 12,130,44</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>4.</td>
<td>forEach()
<p>数组每个元素都执行一次回调函数。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">let<span class="pln"> num <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">7<span class="pun">,<span class="pln"> <span class="lit">8<span class="pun">,<span class="pln"> <span class="lit">9<span class="pun">];<span class="pln">
num<span class="pun">.<span class="pln">forEach<span class="pun">(<span class="kwd">function<span class="pln"> <span class="pun">(<span class="pln">value<span class="pun">)<span class="pln"> <span class="pun">{<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="pln">value<span class="pun">);<span class="pln">
<span class="pun">});</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
<p>编译成 JavaScript 代码:</p>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> num <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">7<span class="pun">,<span class="pln"> <span class="lit">8<span class="pun">,<span class="pln"> <span class="lit">9<span class="pun">];<span class="pln">
num<span class="pun">.<span class="pln">forEach<span class="pun">(<span class="kwd">function<span class="pln"> <span class="pun">(<span class="pln">value<span class="pun">)<span class="pln"> <span class="pun">{<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="pln">value<span class="pun">);<span class="pln"><span class="com">// 7 8 9<span class="pln">
<span class="pun">});</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>5.</td>
<td>indexOf()
<p>搜索数组中的元素,并返回它所在的位置。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> index <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">12<span class="pun">,<span class="pln"> <span class="lit">5<span class="pun">,<span class="pln"> <span class="lit">8<span class="pun">,<span class="pln"> <span class="lit">130<span class="pun">,<span class="pln"> <span class="lit">44<span class="pun">].<span class="pln">indexOf<span class="pun">(<span class="lit">8<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"index is : "<span class="pln"> <span class="pun">+<span class="pln"> index <span class="pun">);<span class="pln"><span class="com">// 2</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>6.</td>
<td>join()
<p>把数组的所有元素放入一个字符串。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> arr <span class="pun">=<span class="pln"> <span class="kwd">new<span class="pln"> <span class="typ">Array<span class="pun">(<span class="str">"First"<span class="pun">,<span class="str">"Second"<span class="pun">,<span class="str">"Third"<span class="pun">);<span class="pln">
<span class="kwd">var<span class="pln"> str <span class="pun">=<span class="pln"> arr<span class="pun">.<span class="pln">join<span class="pun">();<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"str : "<span class="pln"> <span class="pun">+<span class="pln"> str <span class="pun">);<span class="pln"><span class="com">// First,Second,Third <span class="pln">
<span class="kwd">var<span class="pln"> str <span class="pun">=<span class="pln"> arr<span class="pun">.<span class="pln">join<span class="pun">(<span class="str">", "<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"str : "<span class="pln"> <span class="pun">+<span class="pln"> str <span class="pun">);<span class="pln"><span class="com">// First, Second, Third<span class="pln">
<span class="kwd">var<span class="pln"> str <span class="pun">=<span class="pln"> arr<span class="pun">.<span class="pln">join<span class="pun">(<span class="str">" + "<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"str : "<span class="pln"> <span class="pun">+<span class="pln"> str <span class="pun">);<span class="pln"><span class="com">// First + Second + Third</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>7.</td>
<td>lastIndexOf()
<p>返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> index <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">12<span class="pun">,<span class="pln"> <span class="lit">5<span class="pun">,<span class="pln"> <span class="lit">8<span class="pun">,<span class="pln"> <span class="lit">130<span class="pun">,<span class="pln"> <span class="lit">44<span class="pun">].<span class="pln">lastIndexOf<span class="pun">(<span class="lit">8<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"index is : "<span class="pln"> <span class="pun">+<span class="pln"> index <span class="pun">);<span class="pln"><span class="com">// 2</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>8.</td>
<td>map()
<p>通过指定函数处理数组的每个元素,并返回处理后的数组。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> numbers <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">4<span class="pun">,<span class="pln"> <span class="lit">9<span class="pun">];<span class="pln">
<span class="kwd">var<span class="pln"> roots <span class="pun">=<span class="pln"> numbers<span class="pun">.<span class="pln">map<span class="pun">(<span class="typ">Math<span class="pun">.<span class="pln">sqrt<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"roots is : "<span class="pln"> <span class="pun">+<span class="pln"> roots <span class="pun">);<span class="pln"><span class="com">// 1,2,3</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>9.</td>
<td>pop()
<p>删除数组的最后一个元素并返回删除的元素。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> numbers <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">4<span class="pun">,<span class="pln"> <span class="lit">9<span class="pun">];<span class="pln">
<span class="kwd">var<span class="pln"> element <span class="pun">=<span class="pln"> numbers<span class="pun">.<span class="pln">pop<span class="pun">();<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"element is : "<span class="pln"> <span class="pun">+<span class="pln"> element <span class="pun">);<span class="pln"><span class="com">// 9<span class="pln">
<span class="kwd">var<span class="pln"> element <span class="pun">=<span class="pln"> numbers<span class="pun">.<span class="pln">pop<span class="pun">();<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"element is : "<span class="pln"> <span class="pun">+<span class="pln"> element <span class="pun">);<span class="pln"><span class="com">// 4</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>10.</td>
<td>push()
<p>向数组的末尾添加一个或更多元素,并返回新的长度。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> numbers <span class="pun">=<span class="pln"> <span class="kwd">new<span class="pln"> <span class="typ">Array<span class="pun">(<span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">4<span class="pun">,<span class="pln"> <span class="lit">9<span class="pun">);<span class="pln">
<span class="kwd">var<span class="pln"> length <span class="pun">=<span class="pln"> numbers<span class="pun">.<span class="pln">push<span class="pun">(<span class="lit">10<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"new numbers is : "<span class="pln"> <span class="pun">+<span class="pln"> numbers <span class="pun">);<span class="pln"><span class="com">// 1,4,9,10 <span class="pln">
length <span class="pun">=<span class="pln"> numbers<span class="pun">.<span class="pln">push<span class="pun">(<span class="lit">20<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"new numbers is : "<span class="pln"> <span class="pun">+<span class="pln"> numbers <span class="pun">);<span class="pln"><span class="com">// 1,4,9,10,20</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>11.</td>
<td>reduce()
<p>将数组元素计算为一个值(从左到右)。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> total <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">0<span class="pun">,<span class="pln"> <span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">2<span class="pun">,<span class="pln"> <span class="lit">3<span class="pun">].<span class="pln">reduce<span class="pun">(<span class="kwd">function<span class="pun">(<span class="pln">a<span class="pun">,<span class="pln"> b<span class="pun">){<span class="pln"> <span class="kwd">return<span class="pln"> a <span class="pun">+<span class="pln"> b<span class="pun">;<span class="pln"> <span class="pun">});<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"total is : "<span class="pln"> <span class="pun">+<span class="pln"> total <span class="pun">);<span class="pln"><span class="com">// 6</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>12.</td>
<td>reduceRight()
<p>将数组元素计算为一个值(从右到左)。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> total <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">0<span class="pun">,<span class="pln"> <span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">2<span class="pun">,<span class="pln"> <span class="lit">3<span class="pun">].<span class="pln">reduceRight<span class="pun">(<span class="kwd">function<span class="pun">(<span class="pln">a<span class="pun">,<span class="pln"> b<span class="pun">){<span class="pln"> <span class="kwd">return<span class="pln"> a <span class="pun">+<span class="pln"> b<span class="pun">;<span class="pln"> <span class="pun">});<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"total is : "<span class="pln"> <span class="pun">+<span class="pln"> total <span class="pun">);<span class="pln"><span class="com">// 6</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>13.</td>
<td>reverse()
<p>反转数组的元素顺序。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> arr <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">0<span class="pun">,<span class="pln"> <span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">2<span class="pun">,<span class="pln"> <span class="lit">3<span class="pun">].<span class="pln">reverse<span class="pun">();<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Reversed array is : "<span class="pln"> <span class="pun">+<span class="pln"> arr <span class="pun">);<span class="pln"><span class="com">// 3,2,1,0</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>14.</td>
<td>shift()
<p>删除并返回数组的第一个元素。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> arr <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">10<span class="pun">,<span class="pln"> <span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">2<span class="pun">,<span class="pln"> <span class="lit">3<span class="pun">].<span class="pln">shift<span class="pun">();<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Shifted value is : "<span class="pln"> <span class="pun">+<span class="pln"> arr <span class="pun">);<span class="pln"><span class="com">// 10</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>15.</td>
<td>slice()
<p>选取数组的的一部分,并返回一个新数组。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> arr <span class="pun">=<span class="pln"> <span class="pun">[<span class="str">"orange"<span class="pun">,<span class="pln"> <span class="str">"mango"<span class="pun">,<span class="pln"> <span class="str">"banana"<span class="pun">,<span class="pln"> <span class="str">"sugar"<span class="pun">,<span class="pln"> <span class="str">"tea"<span class="pun">];<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"arr.slice( 1, 2) : "<span class="pln"> <span class="pun">+<span class="pln"> arr<span class="pun">.<span class="pln">slice<span class="pun">(<span class="pln"> <span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">2<span class="pun">)<span class="pln"> <span class="pun">);<span class="pln"><span class="com">// mango<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"arr.slice( 1, 3) : "<span class="pln"> <span class="pun">+<span class="pln"> arr<span class="pun">.<span class="pln">slice<span class="pun">(<span class="pln"> <span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">3<span class="pun">)<span class="pln"> <span class="pun">);<span class="pln"><span class="com">// mango,banana</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>16.</td>
<td>some()
<p>检测数组元素中是否有元素符合指定条件。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">function<span class="pln"> isBigEnough<span class="pun">(<span class="pln">element<span class="pun">,<span class="pln"> index<span class="pun">,<span class="pln"> array<span class="pun">)<span class="pln"> <span class="pun">{<span class="pln">
<span class="kwd">return<span class="pln"> <span class="pun">(<span class="pln">element <span class="pun">>=<span class="pln"> <span class="lit">10<span class="pun">);<span class="pln">
<span class="pun">}<span class="pln">
<span class="kwd">var<span class="pln"> retval <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">2<span class="pun">,<span class="pln"> <span class="lit">5<span class="pun">,<span class="pln"> <span class="lit">8<span class="pun">,<span class="pln"> <span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">4<span class="pun">].<span class="pln">some<span class="pun">(<span class="pln">isBigEnough<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Returned value is : "<span class="pln"> <span class="pun">+<span class="pln"> retval <span class="pun">);<span class="pln"><span class="com">// false<span class="pln">
<span class="kwd">var<span class="pln"> retval <span class="pun">=<span class="pln"> <span class="pun">[<span class="lit">12<span class="pun">,<span class="pln"> <span class="lit">5<span class="pun">,<span class="pln"> <span class="lit">8<span class="pun">,<span class="pln"> <span class="lit">1<span class="pun">,<span class="pln"> <span class="lit">4<span class="pun">].<span class="pln">some<span class="pun">(<span class="pln">isBigEnough<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Returned value is : "<span class="pln"> <span class="pun">+<span class="pln"> retval <span class="pun">);<span class="pln"><span class="com">// true</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>17.</td>
<td>sort()
<p>对数组的元素进行排序。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> arr <span class="pun">=<span class="pln"> <span class="kwd">new<span class="pln"> <span class="typ">Array<span class="pun">(<span class="str">"orange"<span class="pun">,<span class="pln"> <span class="str">"mango"<span class="pun">,<span class="pln"> <span class="str">"banana"<span class="pun">,<span class="pln"> <span class="str">"sugar"<span class="pun">);<span class="pln">
<span class="kwd">var<span class="pln"> sorted <span class="pun">=<span class="pln"> arr<span class="pun">.<span class="pln">sort<span class="pun">();<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Returned string is : "<span class="pln"> <span class="pun">+<span class="pln"> sorted <span class="pun">);<span class="pln"><span class="com">// banana,mango,orange,sugar</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>18.</td>
<td>splice()
<p>从数组中添加或删除元素。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> arr <span class="pun">=<span class="pln"> <span class="pun">[<span class="str">"orange"<span class="pun">,<span class="pln"> <span class="str">"mango"<span class="pun">,<span class="pln"> <span class="str">"banana"<span class="pun">,<span class="pln"> <span class="str">"sugar"<span class="pun">,<span class="pln"> <span class="str">"tea"<span class="pun">];<span class="pln">
<span class="kwd">var<span class="pln"> removed <span class="pun">=<span class="pln"> arr<span class="pun">.<span class="pln">splice<span class="pun">(<span class="lit">2<span class="pun">,<span class="pln"> <span class="lit">0<span class="pun">,<span class="pln"> <span class="str">"water"<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"After adding 1: "<span class="pln"> <span class="pun">+<span class="pln"> arr <span class="pun">);<span class="pln"> <span class="com">// orange,mango,water,banana,sugar,tea <span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"removed is: "<span class="pln"> <span class="pun">+<span class="pln"> removed<span class="pun">);<span class="pln">
removed <span class="pun">=<span class="pln"> arr<span class="pun">.<span class="pln">splice<span class="pun">(<span class="lit">3<span class="pun">,<span class="pln"> <span class="lit">1<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"After removing 1: "<span class="pln"> <span class="pun">+<span class="pln"> arr <span class="pun">);<span class="pln"><span class="com">// orange,mango,water,sugar,tea <span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"removed is: "<span class="pln"> <span class="pun">+<span class="pln"> removed<span class="pun">);<span class="pln"><span class="com">// banana</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>19.</td>
<td>toString()
<p>把数组转换为字符串,并返回结果。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> arr <span class="pun">=<span class="pln"> <span class="kwd">new<span class="pln"> <span class="typ">Array<span class="pun">(<span class="str">"orange"<span class="pun">,<span class="pln"> <span class="str">"mango"<span class="pun">,<span class="pln"> <span class="str">"banana"<span class="pun">,<span class="pln"> <span class="str">"sugar"<span class="pun">);<span class="pln">
<span class="kwd">var<span class="pln"> str <span class="pun">=<span class="pln"> arr<span class="pun">.<span class="pln">toString<span class="pun">();<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Returned string is : "<span class="pln"> <span class="pun">+<span class="pln"> str <span class="pun">);<span class="pln"><span class="com">// orange,mango,banana,sugar</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
<tr>
<td>20.</td>
<td>unshift()
<p> </p>
<p>向数组的开头添加一个或更多元素,并返回新的长度。</p>
</td>
<td>
<pre class="prettyprint prettyprinted"><span class="kwd">var<span class="pln"> arr <span class="pun">=<span class="pln"> <span class="kwd">new<span class="pln"> <span class="typ">Array<span class="pun">(<span class="str">"orange"<span class="pun">,<span class="pln"> <span class="str">"mango"<span class="pun">,<span class="pln"> <span class="str">"banana"<span class="pun">,<span class="pln"> <span class="str">"sugar"<span class="pun">);<span class="pln">
<span class="kwd">var<span class="pln"> length <span class="pun">=<span class="pln"> arr<span class="pun">.<span class="pln">unshift<span class="pun">(<span class="str">"water"<span class="pun">);<span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Returned array is : "<span class="pln"> <span class="pun">+<span class="pln"> arr <span class="pun">);<span class="pln"><span class="com">// water,orange,mango,banana,sugar <span class="pln">
console<span class="pun">.<span class="pln">log<span class="pun">(<span class="str">"Length of the array is : "<span class="pln"> <span class="pun">+<span class="pln"> length <span class="pun">);<span class="pln"> <span class="com">// 5</span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></span></pre>
</td>
</tr>
</tbody>
</table>
<p> </p><br><br>
来源:https://www.cnblogs.com/xiewangfei123/p/12467197.html
頁:
[1]