跳至主要內容

numberUtils

chanchaw小于 1 分钟javascript

保留位数

const num=0.123456789
const fixed2 = num.toFixed(2)
const fixed3 = num.toFixed(3)

reduce求平均值

const average = (...args) => args.reduce((a, b) => a + b) / args.length;
average(1, 2, 3, 4);
// Result: 2.5

打乱数组

const shuffleArray = (arr) => arr.sort(() => 0.5 - Math.random());
console.log(shuffleArray([1, 2, 3, 4]));
// Result: [ 1, 4, 3, 2 ]

舍去小数

console.log(~~49.11);
console.log(~~49.96);

格式化金额

/**
 * 将数组格式化为显示人民币符号的数字,自动四舍五入保留两位小数
 * @param num 数字、字符串类型都可以
 * @returns 11.369 -> ¥11.37
 */
function formatMoney(num: number | string) {
  const tmp = parseFloat(num.toString())
  return tmp.toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' })
}

export { formatMoney }