Q:JavaScript的数组有哪些独特的方法?
JavaScript数组具有非常健壮的API,提供了许多方便实用的方法。在很多编程语言中操作数组不是太容易的事情,几乎离不开循环遍历,但在JavaScript中无论是对数组进行合并、删除还是排序都可以直接完成。下面这四种针对数组的操作方法是每个开发人员(js)都应该知道的:
![0e8c57c0a0ee339435b8fc70aabf74ed.png](https://i-blog.csdnimg.cn/blog_migrate/53d42e6dfe62e3ef5d4d8f78ed35f745.jpeg)
Array.prototype.map( )
Array.prototype.map()将提供的函数作用于原始数组的每个元素,创建并返回一个新数组,长度与原始数组相同。
![8cdf2fef1d99926955715374b367d700.png](https://i-blog.csdnimg.cn/blog_migrate/f3f6b76d458d64ae699ab3604ced177f.jpeg)
Array.prototype.filter( )
Array.prototype.filter()通过提供的函数创建新数组,仅保留函数返回true所对应的元素。结果是一个等于或小于原始数组长度的数组,元素的先后顺序不会发生改变。
![9833bff40730b5b8b037ea5161bf2bc6.png](https://i-blog.csdnimg.cn/blog_migrate/eae945d689a6430f6acbff5a2739a710.jpeg)
Array.prototype.reduce( )
Array.prototype.reduce()的作用相当于累加器,根据提供的函数,结果可以是任何类型,例如整数,对象或数组。
![8103b274d1132c74b22bb349b9b39acf.png](https://i-blog.csdnimg.cn/blog_migrate/26d8c1d7330868567d11f65f40a4a5fe.jpeg)
Array.prototype.find( )
Array.prototype.find()返回函数结果为true所对应的第一个元素。
![6f642b2ef5b6652e9a32a3bd8468fc1e.png](https://i-blog.csdnimg.cn/blog_migrate/27d1ea58fd10c3da52b8427a2fe741d5.jpeg)
总结:以上四个方法通过遍历数组的方法同样可以实现,而且必须要承认的是通过for循环遍历数组可能是性能最好的。但是无论在前端还是在Nodejs应用开发中,使用现成的方法有助于构建清晰的逻辑结构,也便于阅读和修改。