JS 處理科學計數法
阿新 • • 發佈:2018-12-25
num = 1.25e-7
editE (num) { if (!num) return num num = num.toString() if (num.indexOf('e') === -1) { return num } let reg = /(?:(\d)+(?:.(\d+))?)[e]{1}-(\d)/.exec(num) if (!reg) { return num } let v = num if (reg[3] === '7') { v = '0.000000' + (reg[2] ? reg[1] + reg[2] : reg[1]) } else { v = '0.0000000' + reg[1] } return v }
transNum (num) { let str = num.toString() let reg = /^(\d+)(e)([\-]?\d+)$/ let arr, len, zero = ''; if (!reg.test(str)) { return num } else { arr = reg.exec(str) console.log(arr) len = Math.abs(arr[3]) - 1 for (let i = 0; i < len; i++) { zero += '0' } return '0.' + zero + arr[1] }