Javascript number超过16位就无法比较了,所以自己写了一个。

 用到的数组函数
1、Array.reverse() 方法将一个 Array 对象中的元素位置进行反转。在执行过程中,这个方法并不会创建一个新的 Array 对象
2、Array.concat concat 方法返回一个 Array 对象,其中包含了 array1 和提供的任意其他项目的连接。
3、Array.join join 返回字符串值,其中包含了连接到一起的数组的所有元素,元素由指定的分隔符分隔开来。





 <script type="text/javascript">
//begin > end 返回true
//begin <= end 返回false
function Compare(begin, end) { if (begin == end) {
return false;
} var beginArr = new Array();
var endArr = new Array(); var len = (begin.length > end.length) ? begin.length : end.length;
beginArr = begin.paddLeftA(len, '-1');
endArr = end.paddLeftA(len, '-1'); var result = false;
//debugger;
for (var i = 0; i < len; i++) {
if (parseFloat(beginArr[i]) == parseFloat(endArr[i])) {
continue;
} else {
result = parseFloat(beginArr[i]) > parseFloat(endArr[i]);
break;
}
} return result;
} String.prototype.paddLeft = function(myLength, paddStr) {
var stringLength = this.length; //输入字符串长度
var paddLength = myLength - stringLength; //0字符串长度
var result = ''; //补0后返回的字符串 //生成0字符串
for (var i = 0; i < paddLength; i++) {
result += paddStr || '0';
}
//拼接 result += this;
return result;
} //返回数组
String.prototype.paddLeftA = function(myLength, paddStr) {
var stringLength = this.length; //输入字符串长度
var paddLength = myLength - stringLength; //0字符串长度
var result = ''; //补0后返回的字符串
var resultArr = new Array(); //生成0字符串
for (var i = 0; i < paddLength; i++) {
resultArr.push(paddStr)
}
//拼接 result += this;
return resultArr.concat(this.split(''));
} function add(begin, end) { var result = new Array();
//左补零
var len = (begin.length > end.length) ? begin.length : end.length;
var beginArr = begin.paddLeft(len, '0').split('');
var endArr = end.paddLeft(len, '0').split(''); //从个位开始计算
for (var i = len - 1; i > -1; i--) {
var temp1 = parseInt(beginArr[i]);
var temp2 = parseInt(endArr[i]); var sum = temp1 + temp2;
result.push(sum);
} for (var i = 0; i < result.length; i++) {
var temp = parseInt(result[i]);
if (temp >= 10) {
result[i] = (temp - 10);
if (i == result.length - 1) {
result.push(1);
} else {
result[i + 1] = parseInt(result[i + 1]) + 1;
}
}
}
return result.reverse().join('');
}
</script>

js Number越界比较.的更多相关文章

  1. js Number string

    Number string number Js只有一种数字类型(包括整型,浮点型) 极大或极小的可用科学计数法来表示.(7.7123e+1) 所有js数字均为64位 Js所有的数字都存储为浮点型 小数 ...

  2. 【转载】JS Number类型数字位数及IEEE754标准

    JS的基础类型Number,遵循 IEEE 754 规范,采用双精度存储(double precision),占用 64 bit.如图 意义 1位用来表示符号位 11位用来表示指数 52位表示尾数 浮 ...

  3. JS Number类型数字位数及IEEE754标准

    JS的基础类型Number,遵循 IEEE 754 规范,采用双精度存储(double precision),占用 64 bit.如图 意义 1位用来表示符号位 11位用来表示指数 52位表示尾数 浮 ...

  4. JS Number对象

    数字属性 MAX_VALUE MIN_VALUE NEGATIVE_INFINITY POSITIVE_INFINITY NaN prototype constructor 数字方法 toExpone ...

  5. Javascript将字符串日期格式化为yyyy-mm-dd的方法 js number 类型 没有length 属性 string类型才有

    日期格式化相信对于大家来说再熟悉不过,最近工作中自己利用Javascript就写了一个,现在将实现的代码分享给大家,希望对有需要的朋友们能有所帮助,感兴趣的朋友们下面来一起看看吧. 这篇文章主要介绍的 ...

  6. js Number方法总结

    Number构造属性 Number.EPSILON // 两个可表示(representable)数之间的最小间隔. Number.MAX_SAFE_INTEGER // JavaScript 中最大 ...

  7. JS魔法堂:再识Number type

    Brief 本来只打算理解JS中0.1 + 0.2 == 0.30000000000000004的原因,但发现自己对计算机的数字表示和运算十分陌生,于是只好恶补一下.以下是恶补后的成果: 基础野:细说 ...

  8. JS 学习(四)对象

    对象 在JS中,对象是数据(变量),拥有属性和方法. JS中所有事物都是对象:字符串.数字.数组.日期等. 对象是拥有属性和方法的特殊数据类型. 属性是与对象相关的值. 方法是能够在对象上执行的动作. ...

  9. js和HTML结合(补充知识:如何防止文件缓存的js代码)

    来自<javascript高级程序设计 第三版:作者Nicholas C. Zakas>的学习笔记(二) 使用html标签<script>可以把js嵌入到html页面中,让脚本 ...

随机推荐

  1. 阿里云Centos中二级域名绑定二级目录的方法

    对于一些目录,我们往往需要对其指定二级域名,那么具体如何操作呢?下面,我将用亲身实践来说明一下. 由于第一次接触centos,我不得不借助于网络资源.然后得知要开启mod_rewrite这个模块,具体 ...

  2. andorid中Html.fromHtml方法

    在android中,有一个容易遗忘的Html.fromhtml方法,意思是可以将比如文本框中的字符串进行HTML格式化,支持的还是很多的, 但要注意的是要在string.xml中用<!--cda ...

  3. 对UIWebView的学习

    建工程,建一个类WebViewController 继承于UIViewController WebViewController设置为根视图控制器 WebViewController遵守UIWebVie ...

  4. indexOf()的用法

    indexOf()的用法:返回字符中indexof(string)中字串string在父串中首次出现的位置,从0开始!没有返回-1:方便判断和截取字符串! indexOf()定义和用法indexOf( ...

  5. tomcat直接访问

    解决了:http://blog.csdn.net/zhangyulin54321/article/details/8876320 <Context path="" docBa ...

  6. 颜色追踪块CamShift---33

    原创博客:转载请标明出处:http://www.cnblogs.com/zxouxuewei/ 颜色追踪块CamShift滤波器. 首先确保你的kinect驱动或者uvc相机驱动能正常启动:(如果你使 ...

  7. 工作中遇到的问题--缓存配置(使用@Configuration装配 @Bean的方式注入)

    @EnableCaching@Configurationpublic class MFGCachingConfiguration { @Autowired private MFGSettings mf ...

  8. spark新能优化之reduceBykey和groupBykey的使用

    val counts = pairs.reduceByKey(_ + _) val counts = pairs.groupByKey().map(wordCounts => (wordCoun ...

  9. Linux驱动设计—— 中断与时钟@request_irq参数详解

    request_irq函数定义 /*include <linux/interrupt.h>*/ int request_irq(unsigned int irq, irq_handler_ ...

  10. 代码备份:处理 SUN397 的代码,将其分为 80% 训练数据 以及 20% 的测试数据

    处理SUN397 的代码,将其分为80% 训练数据以及20% 的测试数据 2016-07-27 1 %% Code for Process SUN397 Scene Classification 2 ...