1、純字符串比較,轉換成ASCII碼在進行比較;
2、純數字和數字字符串相比較,則將字符串數字隱式轉換成數字再進行比較;
3、純數字和非數字字符串比較,都返回false;
一般數字比較 會使用
isNaN() 判斷是否為 數字 (如果參數值為 NaN 或字符串、對象、undefined等非數字值則返回 true, 否則返回 false。)
或者使用正則
function isNumber(val){ var regPos = /^\d+(\.\d+)?$/; //非負浮點數 var regNeg = /^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/; //負浮點數 if(regPos.test(val) || regNeg.test(val)){ return true; }else{ return false; } } function isIntNum(val){ var regPos = / ^\d+$/; // 非負整數 var regNeg = /^\-[1-9][0-9]*$/; // 負整數 if(regPos.test(val) || regNeg.test(val)){ return true; }else{ return false; } }
轉化比較
parseFloat(string) 轉化為浮點型 進行比較
parseInt() 轉化為整形比較
一邊處理數據前先使用
trim(),去掉兩邊空