今天看了廖雪峰的js教程,看到了filter的用法。
其中用它來實現去除Array中重復元素的方法在這里記錄下來。
Filter
filter是一個常用的操作,它用于把Array的某些元素過濾掉,然后返回剩下的元素。
和map()類似,Array的filter()也接收一個函數。和map()不同的是,filter()把傳入的函數依次作用于每個元素,然后根據返回值是true還是false決定保留還是丟棄該元素。
利用filter,可以巧妙地去除Array的重復元素:
'use strict';var r, arr = ['apple', 'strawberry', 'banana', 'pear', 'apple', 'orange', 'orange', 'strawberry']; r = arr.filter(function (element, index, self) { return self.indexOf(element) === index;});
因為Array中的indexOf總是返回第一次出現某一個元素的位置,后續的重復元素位置與indexOf返回的位置不相等,因此被filter濾掉了。
以上所述是小編給大家介紹的JS中去掉array中重復元素的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答