项目中经常使用js封装(持续更新)

咱们平常开发中常常会碰到各类各样的需求,但不少需求都是重复的,所以我就把平时开发中遇到的一些常见方法作了个总结和概括。
一、金额的格式化前端

好比2.00,1,222,2.00像这样格式的数据在不少电商或者后台数据显示上见到,然而这些数据后台每每只是给咱们前端返回2或者12222等等,所以咱们前端就须要对数据进行处理数组

/*code

  • 格式化数字格式
  • @param s为要格式化的number
  • @param n为要保留几位小数点
  • example: formatNum(2,2) 返回结果为"2.00"
  • */

const formatNum = (s, n) => {orm

n = n > 0 && n <= 20 ? n : 2
s = parseFloat((s + '').replace(/[^\d\.-]/g, '')).toFixed(n) + ''
var l = s.split('.')[0].split('').reverse(), r = s.split('.')[1]
t = ''
for (i = 0; i < l.length; i++) {
    t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? ',' : '')
}
return t.split('').reverse().join('') + '.' + r

}对象

二、检查某个对象是否为空开发

这个常见于咱们进行判断的时候啦rem

/*get

  • 检查一个对象是否为空
  • @param object为要判断的对象
  • example:
  • let obj = {}
  • isEmptyObj(obj) 返回结果为true,不然false
  • */

const isEmptyObj = object => {it

if (!!Object.getOwnPropertySymbols(object).length) {
    return false
}
for (const key in object) {
    if (object.hasOwnProperty(key)) {
        return false
    }
}
return true

}form

三、数组去重
/*

  • 检查一个对象是否为空
  • @param arr为要去重的数组
  • example:
  • let arr = [1,1,2,3,4]
  • removeDuplicates(arr) 返回结果为[1,2,3,4]
  • */

1.较繁琐方法
const removeDuplicates = arr =>{

const uniqueVals = []
arr.forEach((value,index) => {
    if(uniqueVals.indexOf(value) === -1){
        uniqueVals.push(value)
    }
})
return uniqueVals

}

2.简单方法1

const removeDuplicates = arr => {

return arr.filter((item,pos) => arr.indexOf(item) === pos)

}

简单方法2

const removeDuplicates = arr => {

return [...new Set(arr)]

}

相关文章
相关标签/搜索