第十四天
<h4>1. 二维数组展开为一维数组 reduce</h4>
<pre><code class="language-javascript"> let arr = [[1,2],[3,4],[5,6]];
let flatArray = arr.reduce((cur,val) => cur.concat(val));
console.log(flatArray) //[1, 2, 3, 4, 5, 6]</code></pre>
<h4>2. 筛选一个以 t 开头且以 r 结尾的单词数组 filter</h4>
<pre><code class="language-javascript">let arr = ['tarr','targ','arry','tager'];
let newArr = arr.filter((elem) =>{
return elem.startsWith('t') && elem.endsWith('r') ? true : false
})
console.log(newArr) //["tarr", "tager"]</code></pre>
<h4>3. map将每个元素传递给转换函数</h4>
<pre><code class="language-javascript">var data = ["2345-34r", "2e345-211", "543-67i4", "346-598"];
var re = /[a-z A-Z]/;
let newData = data.map((elem) => elem.replace(re,''));
console.log(newData) //["2345-34", "2345-211", "543-674", "346-598"]</code></pre>
<blockquote>
<p>总结:三个用法保证了函数的纯度,又不改变原始数组。</p>
</blockquote>