JS中没有长整型的概念,事实上,JS在内部将所有数值都使用浮点型式表示,也就是Float.但你的20位数确实太大了,通常情况下,如果计算结果不是很大的话,你可以考虑先将两个字符串左边相同的位截去,然后再parseInt(),之后再进行减法运算应该就可以了.
创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:做网站、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的琅琊网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
通过parseInt转换整数后的值与原来的值比较是否相等。
示例:
var a=123;
if(parseInt(a)==a){//通过parseInt转换变量a的值,然后与a本身进行比较,如果是整数,则两者一致,如果不是整数,则两者不一致。
//是整数
}else{
//不是整数
}
补充:
parseInt:表示对值进行取整
首先纠正一下,JavaScript中没有整型或浮点型之类的概念,只有Number,Number表示所有的数值类型数据。
Number最小值:-1.7976931348623157E+308
Number最大值:1.7976931348623157E+308
当Number比-1E308还小,则会显示成-Infinity;
当Number比+1E308还大,则会显示成Infinity;
Infinity表示无穷大,也就是JavaScript也不知道它到底有多大。
至于Number所占用的字节数,应该根你Number的具体值有关,一般是2 - 4个字节,Boolean型占1个字节。
javascript没有整型变量这个概念,变量可以被赋值为任何类型的值。数值类型只有Number,不区分整数、浮点、长整等,直接赋值为一个整数即可。如果使用过程中必须用到整数,可以通过Math.round(number),parseInt(string)等函数取整,再使用。
JS中基本类型数据只有整型,浮点型,字符型和布尔型。
将字符串转化成整型,只能用parseInt(str) 把字符串解析成整数,默认按照十进制,但若是0开头则按八进制,若是0x开头则按十六进制;或者parseInt
(str,radix) 按指定进制,把字符串解析成整数,即把str当成radix进制翻译成十进制
js数字转换成字符串
将字符串转换成数字,得用到String类的toString方法
举例:
var i = 10;
var s = i.toString();
alert(typeof s); //将输出 String
js数字与字符串的区别
js的数字的加法与字符串的连接都是 + 符号, 所以究竟是加还是字符串的连接就取决与变量的类型。
举例:
var a = 'abc' + 'xyz'; //a的值为:abcxyz,字符串与字符串是连接
var a = 10 + 5; //a的值为:15,数字是加
var a = 'abc' + 10; //a的值为:abc10,字符串与数字,自动将10转换成字符串了
var a = 'abc' + 10 + 20 + 'cd'; //a的值为:abc1020cd
var a = 10 + 20 + 'abc' + 'cd'; //a的值为:30abccd,可以数字加的先数字加,然后再连接