这几天工作涉及到一些 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;
}
应用:
var a = 12.23; //float
型数值
var b = 58.62; //float
型数值
alert(a.add(b));
alert(b.sub(a));
利用 toFixed 方法来截取小数点后保留几位。
2. 获取两日期间隔天数
/**
* 计算两日期之间间隔天数
*
* @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 日期比较 获取天数
来讲,是一种进步,呵呵!
分享到:
相关推荐
标题中的“Python库 | paddle_bfloat-0.1.2-cp38-cp38-macosx_10_9_x86_64.whl”提到了一个名为“paddle_bfloat”的Python库,这是一个针对特定版本的Python(3.8,表示为`cp38`)和操作系统(macOS 10.9,标识为`...
8. **API接口**:jQuery Slider 插件通常会提供一组API接口,用于程序化地设置滑块的值、获取当前值、启用或禁用滑块等操作,这在动态更新页面内容或根据服务器数据调整滑块状态时非常有用。 9. **Ajax集成**:如果...
nodemcu-master-8-modules-2020-05-06-03-33-37-float.bin
本文将详细探讨`float`类型在内存中的数值转换工具及其相关知识点。 `float`类型是计算机科学中广泛使用的浮点数数据类型,它在不同的操作系统(OS)上可能会有不同的存储方式。在内存中,`float`通常按照IEEE 754...
在IT领域,数据类型转换是常见的操作,尤其是在通信协议如MODBUS中,为了高效传输和正确解析数据,需要将数值转换成不同的格式。本篇主要介绍16位、32位以及64位数据如何转换为浮点型(float)和双浮点型(double)...
标题"4BYTE转换成float型代码"指的是将4个字节的数据转换为浮点数(float)的程序代码。在C++或Visual C++(vc)环境中,这通常涉及到低级别内存操作和类型转换。以下是转换过程中涉及的关键知识点: 1. **字节序**...
获取float类型小数点位数,先将数据转换为varchar类型,然后对转换后的数据进行翻转,获取小数点所在的位置即可
在IT行业中,处理数据是...综上所述,"float-data--sort.rar_float" 文件中的任务涵盖了许多基础的IT技能,包括文件操作、数据处理、排序算法以及性能评估。理解并掌握这些概念对于任何IT专业人士来说都是至关重要的。
安装npm install float-scheduler用法var Float = require('float-scheduler');var float = new Float({token: "my-float-api-token", user_agent: "My App <contact>"});构造Float对象时,您必须传递token和user_...
Termux:Float A Termux add-on app to show the terminal in a floating terminal window. Termux:Float on Google Play Termux:Float on F-Droid When developing (or packaging), note that this app needs to ...
在Linux操作系统中,将浮点数(float)转换为十六进制(hex)是一项常见的编程任务,特别是在处理底层数据表示或进行数值计算时。本文将详细介绍如何在Linux环境下实现这一转换,并提供源代码示例。 浮点数在计算机...
标题中的"Java 精确计算 - double-float-String"指向的是Java中处理浮点数(double和float)以及字符串表示的数值时可能遇到的精度问题,以及如何通过特定方法实现精确计算。描述中提到的链接指向了一个具体的博客...
【jQuery浮动标题滑块插件】是一个用于网页交互设计的工具,主要应用于创建具有动态效果的标题滑块。这个zip压缩包"jquery-slider-float-title.zip"包含了实现这一功能的相关文件,其中可能包括HTML模板、CSS样式表...
浮点乘法器在计算机科学和数字信号处理中扮演着关键角色,因为它们能够处理广泛范围的数值并提供高精度计算。32位浮点数通常遵循 IEEE 754 标准,该标准定义了浮点数的存储格式、运算规则和精度。 浮点数乘法器的...
下面将详细阐述`cell2float`函数的使用、原理以及在实际开发中的应用。 `cell2float`函数的基本用法是将一个单元格数组作为输入参数,然后返回一个浮点数数组。单元格数组是一种灵活的数据结构,它可以存储不同类型...
在JavaScript中,有时我们需要对浮点数(float型)进行操作,特别是获取小数点后特定位数的数值。这通常涉及到精度处理和四舍五入的问题。以下是一些方法来实现这一目标,特别是获取小数点后两位的数字。 1. **基本...
浮点数编码,也称为“float code”,是用于表示和处理这些数值的一种方法。在深入探讨之前,我们先来了解一下浮点数的基本概念。 浮点数在计算机内部是以二进制形式存储的,遵循国际标准IEEE 754。这个标准定义了两...
本资源提供的源代码是针对C++编程语言设计的,旨在简化对Ini文件的操作,支持读取和写入float、int以及cstring(C++中的字符串类)类型的值。 Ini文件读写类(CInitFile)通常包含以下功能: 1. **初始化与关闭**...
标题中的"fp-adder.rar_float_float point_float point adder"提到了浮点加法器的设计,这主要涉及计算机体系结构中的浮点运算部分。浮点加法器是用于执行浮点数加法操作的关键硬件组件,它在科学计算、图形处理和高...