總結:我編碼中經常使用到的小方法

類型轉換

!! = Boolean()
~~ = ParseInt()
+  = ParseFloat()

使用includes代替indexOf

Array.prototype.includes已經被絕大多數瀏覽器支持,受制於以前瀏覽器兼容性的影響,許多身邊的同事依然習慣使用indexOf,但includes更加體現代碼的語義化。javascript

var arr = [1,2,3,4]

console.log(arr.indexOf(2) >= 0)

console.log(!!~arr.indexOf(2))

console.log(arr.includes(2))

reduce的用處

在與後端的數據交互中,後端開發每每不能提供對於前端很是理想化的數據,列表尤其明顯,Array.prototype.reduce能夠比較方便的格式化須要的數據
之前的代碼 前端

var arr = []
const { data = [] } = result
data.forEach(item => {
    if (xxx) {
        arr.push({
            xxx: item.xxx,
            .....
        })
    }
})

retrun arr

使用reduce java

const { data = [] } = result

const arr = data.reduce((prev, curr) => {
    if (curr.xxx) {
        prev.push({
            xxx: curr.xxx,
            .....
        })
    }
    return prev
}, [])

return arr
相關文章
相關標籤/搜索