题目描述
求 a 和 b 相乘的值,a 和 b 可能是小数,需要注意结果的精度问题
示例1
输入
3, 0.0001
输出
0.0003
function multiply(a, b) {
// 先将数字转换为字符串
var str1 = a.toString();
var str2 = b.toString();
// 先获取两个数的小数位数
var lenA = (str1.indexOf('.')==-1)?0:(str1.length-str1.indexOf(".")-1);
var lenB = (str2.indexOf('.')==-1)?0:(str2.length-str2.indexOf(".")-1);
// 比较两数的精度,精度大的作为结果数精度
var len = Math.max(lenA,lenB);
// 计算运算结果
var result = parseFloat(a*b).toFixed(len);
return result
}