面试题:阿里

/ 面试题013 如何实现两金额数据相加(最多小数点两位)?
——阿里巴巴出题专家:御术/蚂蚁金服数据可视化高级技术专家
参考答案
其实问题并不难,就是考察候选人对 JavaScript 数据运算上的认知以及考虑问题的缜密程度,有不少坑,能够用在笔试题,若是用在面试,回答过程当中还能够随机加入有不少计算机基础的延伸。
回到这个问题,因为直接浮点相 yu 加会失精,因此要转整数;(能够插入问遇到过吗?是否能够举个例子?)。
转整数是第一个坑,虽然只有两位能够经过乘以100转整数,但因为乘以一百和除以一百都会出现浮点数的运算,因此也会失精,仍是要经过字符串来转;(能够插入问字符串转整数有几种方式?)
字符串转整是第二个坑,由于最后要对齐计算,若是没考虑周全先 toFixed(2),对于只有一位小数点数据进入计算就会错误;转整数后的计算是个加分点,不少同窗每每就是直接算了,若是能够考虑大数计算的场景,恭喜同窗进入隐藏关卡,这就会涉及如何有效循环、遍历、算法复杂度的问题。面试