000100050015-000100060009
我要在JS中判断只有在这两者之间的数字才有效。两边的不行。
怎么写这个JS???
另外不能用截取的方法。
另外下面的这个方法也不行的,当时我测试的太快了,没有测试外面的数据。经过测试是不行的。
if(Number(获取的值) > Number("000100050015") && Number(获取的值) < Number("000100060009") ){
其他操作。
}
有没有其它的方法??在线等。
我要在JS中判断只有在这两者之间的数字才有效。两边的不行。
怎么写这个JS???
另外不能用截取的方法。
另外下面的这个方法也不行的,当时我测试的太快了,没有测试外面的数据。经过测试是不行的。
if(Number(获取的值) > Number("000100050015") && Number(获取的值) < Number("000100060009") ){
其他操作。
}
有没有其它的方法??在线等。
http://topic.csdn.net/u/20080904/16/8e0adbaa-8e69-461f-a4b2-25dfdcf8899a.html
里面的方法不行。
传入的比较参数是test,也以字符串形式存储,这样无论多大都可以表示比较过程:
1、去除min、max、test三个数中高位多余的0
2、找出去除高位0之后min、max、test位数最多的,记录这个位数为bit_count
3、把三个数中位数不足高位补上0,保持三个数所占位数一致
4、直接可以min<test<max比较了,字符串也可以直接比的,还是会按照0~9的次序返回的由于是字符串存储,至于传入的是否为数字,可以用正则表达式来验证,还有第2步去除高位的0之后,min是否比max小,验证是不是一个合法范围,这个楼主自己也知道检查,呵呵!大概就是这样,应该不难实现,可以满足需求!
100100050015
返回的是true?
<script>
function fillZero(target, length) {
target = String(target);
while(target.length < length) {
target = "0" + target;
}
return target;
}
function isRange(target) {
if (target < "000100050015" || target > "000100060009") {
return false;
}
return true;
}
var testData = "000100050016";
testData = fillZero(testData, 12);
alert(isRange(testData));
</script>
要是用于应用的话
善意提醒下
不要冒然做加零的操作
最好限制必须输入12位
按rainsilence的意思直接比较
因为你不知道用户输入不足12位的数字到底是多少
不知道楼主能看到否~