1. 程式人生 > >JavaScript的filter用法

JavaScript的filter用法

header 位置 tle class dex 保留 origin int self.

Js的有些操作會改變原來的對象;有些操作則不會改變原來對象。

數組的filter方法就不會改變原來數組

利用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;
});

alert(r.toString());

indexOf總是返回第一個元素的位置,後續的重復元素位置與indexOf返回的位置不相等,因此被filter濾掉了,所以重復的元素僅會保留第一個位置的元素

array.filter don‘t update the origin array

參考:https://github.com/mobxjs/mobx/issues/1315

JavaScript的filter用法