UNPKG

917 BJavaScriptView Raw
1var round = require('./round')
2var toValueString = require('./toValueString')
3
4var helperStringRepeat = require('./helperStringRepeat')
5var helperNumberOffsetPoint = require('./helperNumberOffsetPoint')
6
7/**
8 * 将数值四舍五入并格式化为固定小数位的字符串
9 *
10 * @param {string|number} num 数值
11 * @param {number} digits 小数保留位数
12 * @return {String}
13 */
14function toFixed (num, digits) {
15 digits = digits >> 0
16 var str = toValueString(round(num, digits))
17 var nums = str.split('.')
18 var intStr = nums[0]
19 var floatStr = nums[1] || ''
20 var digitOffsetIndex = digits - floatStr.length
21 if (digits) {
22 if (digitOffsetIndex > 0) {
23 return intStr + '.' + floatStr + helperStringRepeat('0', digitOffsetIndex)
24 }
25 return intStr + helperNumberOffsetPoint(floatStr, Math.abs(digitOffsetIndex))
26 }
27 return intStr
28}
29
30module.exports = toFixed