ES6里新添加了兩個很好用的東西,set和Array.from。
set是一種新的數據結構,它可以接收一個數組或者是類數組對象,自動去重其中的重復項目。
在這我們可以看見,重復的項目已經被去掉了,包括NaN。正常情況下,NaN === NaN 返回的是false,但是在set里,一樣能夠幫你去重,厲害了。
但是這里大家可以看到,set返回的是一個對象,但是我們想要的是數組啊。
這回,就該輪到Array.from出場了,它的作用,就是可以把類數組對象、可迭代對象轉化為數組。
這回我們再看,已經變成數組了。
這樣一來,就用上面的一段代碼就可以實現數組去重了,是不是比原來的又是循環又是判斷省事多了。
呵呵,先別高興,老話說的好,越是好東西,就越會有兼容性問題。在這里,也不例外。
我經過測試,目前主流的瀏覽器,Chrome,Firfox,Opera,Safari,包括微軟的Edge,都是支持的,唯獨IE系列不支持。
所以,慎用 :) 。