JS应用--操作float型数值、获取两日期间隔天数
??? 这几天工作涉及到一些 JS 的常见应用,在此总结一下,以备不时之需。
?
1. Js 操作float型数值加减问题(直接运算会涉及精度问题)
//该float乘以10的n次方(n为小数位数),即把该float放大为整型再进行加或减运算Number.prototype.getB = function(){var arr = this.toString().split('.');return arr[1]? arr[1].length : 0;}Number.prototype.getP = function(to){return Math.pow(10, Math.max(this.getB(), to.getB()));}Number.prototype.add = function(to){var p = this.getP(to);return (this * p + to * p) / p;}Number.prototype.sub = function(to){var p = this.getP(to);return (this * p - to * p) / p;}
/** * 计算两日期之间间隔天数 * * @param string s 开始时间串 * @param string e 结束时间串 */function interval(startDate, endDate){ var d1 = new Date(startDate.replace(/-/g, "/")); var d2 = new Date(endDate.replace(/-/g, "/")); var time = d2.getTime() - d1.getTime(); return parseInt(time / (1000 * 60 * 60 * 24));}
??PS:个人感觉此种方式比较不错,相对之前博客中的介绍 PHP 日期比较 获取天数? 来讲,是一种进步,呵呵!
?
?