number/round.jsjavascript
/**
* 将数字四舍五入到指定的小数位数。
* @function round
* @memberof module:number
* @param {number} value 要舍入的有限数字
* @param {number} [precision=0] 小数位数,可为负数
* @returns {number} 舍入后的数字
* @throws {TypeError} 参数类型不正确时抛出
*/
function round(value, precision = 0) {
if (!Number.isFinite(value) || !Number.isInteger(precision)) throw new TypeError('value must be finite and precision must be an integer')
const factor = 10 ** precision
return Math.round((value + Number.EPSILON) * factor) / factor
}
export default round