`
阅读更多

今天在做js判断两个值的问题的时候,发现了一个奇怪的现象:即两个数值之间单纯的居然出现不起作用的情况。

 

修改前相关js:

function  check(){
var minNum = document.getElementById("minNum").value;
var maxNum = document.getElementById("maxNum").value;
var re = /^[1-9]+[0-9]*]*$/;

if(minNum == ""){
      alert("请输入最小张数!");
      return false;
}
if(maxNum == ""){
      alert("请输入最大张数!");
      return false;
}

if ((minNum != "" && !re.test(minNum)) || (maxNum != "" && !re.test(maxNum)))   
{   
       alert("请输入正整数!");   
       return false;   
}   
if(maxNum < minNum){
      alert("最小数不能大于最大数!");
      return false;
}
      return true;
}

 

 后来查了相关的资料,才知道这样是有问题的,必须要用eval()函数来进行比较。网上对于eval的定义是:eval()函数用于在不引用任何特定对象的情况下计算代码字符串。

修改后的代码:

function  check(){
var minNum = document.getElementById("minNum").value;
var maxNum = document.getElementById("maxNum").value;
var re = /^[1-9]+[0-9]*]*$/;

if(minNum == ""){
      alert("请输入最小张数!");
      return false;
}
if(maxNum == ""){
      alert("请输入最大张数!");
      return false;
}

if ((minNum != "" && !re.test(minNum)) || (maxNum != "" && !re.test(maxNum)))   
{   
       alert("请输入正整数!");   
       return false;   
}   
if(eval(maxNum) < eval(minNum)){
      alert("最小数不能大于最大数!");
      return false;
}
      return true;
}

 

在此记录下来,给自己提个醒。 

 

分享到:
评论
1 楼 xiaoxihai123 2011-12-22  

相关推荐

    如何用JS判断两个数字的大小

    在JS的学习中,我们经常可能碰到这样的问题,本文用实例演示如何正确的用JS判断两个数字的大小。

    JS比较两个数值的大小实例

    下面小编就为大家带来一篇JS比较两个数值的大小实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

    JavaScript实现获取两个排序数组的中位数算法示例

    本文实例讲述了JavaScript实现获取两个排序数组的中位数算法。分享给大家供大家参考,具体如下: 题目 给定两个大小为 m 和 n 的有序数组 nums1 和 nums2 。 请找出这两个有序数组的中位数。要求算法的时间...

    long.js, 表示两个整数的64位补码的一个长类.zip

    long.js, 表示两个整数的64位补码的一个长类 for表示从封闭库派生的64位complement整数值的长类,用于独立使用和未签名支持扩展。 背景ECMA-262 5th 版,"大小不大于 253的所有正整数和负整数都可以在数字类型中表示...

    javascript函数的解释

    40.数学函数:Math.PI(返回圆周率),Math.SQRT2(返回开方),Math.max(value1,value2)返回两个数中的最在 值,Math.pow(value1,10)返回value1的十次方,Math.round(value1)四舍五入函数,Math.floor (Math.random()*(n+1))...

    Javascript获取数组中的最大值和最小值的方法汇总

    比较数组中数值的大小是比较常见的操作,比较大小的方法有多种,比如可以使用自带的sort()函数,下面来介绍如下几种方法,代码如下: 方法一: //最小值 Array.prototype.min = function() { var min = this[0]; var...

    JS实现六角图绘制

    JS实现六角图绘制,包含源代码和调用说明。...在两个电压相量上的投影,可以确定被测电流相量端点的位置(即电流的相位和大小);用此方法得出不同方向的电流数值,进行矢量计算,即可检验结果的准确性。

    JS实现基于拖拽改变物体大小的方法

    1. 通过id获取到大小两个div 2. 给小div添加onmousedown事件 3. 在onmousedown事件给document添加onmousemove和onmouseup事件 由分析图可知,我们只需要在拖拽的时候,获取到物体不断增加的宽度值,问题就解决了 ...

    javascript入门笔记

    特点:将 a 和 b 先转换为二进制,按位操作,对应位置上的两个数字,相同时,该位整体结果为0,不同时,该位的整体结果为 1 使用场合:快速交换两个数字 5 ^ 3 101 011 ========== 110 结果为 6 练习: ...

    JavaScript经典实例

     1.1连接两个或多个字符串  1.2连接字符串和另一种数据类型  1.3条件比较字符串  1.4在字符串中查找子字符串  1.5从一个字符串提取子字符串  1.6检查一个存在的、非空的字符串  1.7将一个关键字字符串分解为...

    107个常用javascript语句

    40.数学函数:Math.PI(返回圆周率),Math.SQRT2(返回开方),Math.max(value1,value2)返回两个数中的最在值,Math.pow(value1,10)返回 value1的十次方,Math.round(value1)四舍五入函数,Math.floor(Math.random()*(n 1))...

    jquery-images-compare:一个用于比较两个图像的jquery插件

    jQuery Images比较一个用于比较两个图像的jQuery插件徽章产品特点兼容性:ie9 + 努力通过CSS展示外观(更易于皮肤/覆盖) 触摸友好,鼠标拖动,非常感谢 :) React灵敏您可以听更改事件以添加一些逻辑您可以从外部...

    通用FormValid1.0-js验证框架

    compare 对比两个值 limit 长度限制 range 值范围限制 requireChecked 单选、复选框必须选择 filter 扩展名限制 isNo 值不等于 regexp 自定义正则判断 custom 自定义函数判断 更新历史: 1.0 disabled的元件不...

    javascript学习笔记.docx

    当类的这两个方法实现不一致时,在要进行类型转换时指定具体的实现方法比较安全。 4) 在比较运算中,若一个对象或值被转换成NaN(Not a Number),则永远返回false。 5) in可以检查指定字符串是否是一个对象的基本...

    程序天下:JavaScript实例自学手册

    13.24 判断两个字符串日期的大小 13.25 显示登录时间 13.26 中文日期样式(一) 13.27 中文日期样式(二) 13.28 状态栏动态显示时间 13.29 页面访问时间限制 13.30 显示英文上、下午的时间 13.31 用JavaScript制作的...

    常用js大全,javascript校验大全

    1.3 将日期格式由yyyy-MM-dd,转换为yyyymmdd,以直接比较两个日 期的大小.. 4 1.4 判断字符串是否全部由数字组成. 5 1.5 判断字符串是否全部由字母组成. 6 1.6 对于月和日,如果前面有零,去除,如 01 变为 1 .. 6 ...

    大名鼎鼎SWFUpload- Flash+JS 上传

     SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而超越传统标签的文件上传模式。 [编辑本段]SWFUpload的主要特点  * 可以...

    《程序天下:JavaScript实例自学手册》光盘源码

    13.24 判断两个字符串日期的大小 13.25 显示登录时间 13.26 中文日期样式(一) 13.27 中文日期样式(二) 13.28 状态栏动态显示时间 13.29 页面访问时间限制 13.30 显示英文上、下午的时间 13.31 用JavaScript制作的...

    js脚本大全 js验证大全 压缩包

    1.3 将日期格式由yyyy-MM-dd,转换为yyyymmdd,以直接比较两个日 期的大小.. 4 1.4 判断字符串是否全部由数字组成. 5 1.5 判断字符串是否全部由字母组成. 6 1.6 对于月和日,如果前面有零,去除,如 01 变为 1 .. 6 ...

Global site tag (gtag.js) - Google Analytics