jQuery.isNumeric() 和 js isNaN()

时间:2022-01-23 08:39:54

jQuery.isNumeric( value )

Description: 判断指定参数是否是一个数字值(字符串形式的数字也符合条件),返回 true 或者 false。

Example:

 $.isNumeric( "-10" );     // true
$.isNumeric( 16 ); // true
$.isNumeric( 0xFF ); // true
$.isNumeric( "0xFF" ); // true
$.isNumeric( "8e5" ); // true (exponential notation string)
$.isNumeric( 3.1415 ); // true
$.isNumeric( +10 ); // true
$.isNumeric( 0144 ); // true (octal integer literal)
$.isNumeric( "" ); // false
$.isNumeric({}); // false (empty object)
$.isNumeric( NaN ); // false
$.isNumeric( null ); // false
$.isNumeric( true ); // false
$.isNumeric( Infinity ); // false
$.isNumeric( undefined ); // false

JavaScript isNaN( value )

Description: 检查其参数是否是非数字值,返回 true 或者 false。

Example:

 isNaN(NaN);              // true
isNaN(undefined); // true
isNaN(null); // false 能转成0
isNaN(""); // false 能转成0
isNaN([]); // false 能转成0
isNaN({}); // true
isNaN(new Object()); // true
isNaN(new String()); // false
isNaN(new String("a")); // true
isNaN(new Array()); // false 能转成0
isNaN(new Date()); // false 能转成数字
isNaN(new Date().toString()); // true
isNaN(true); // false 能转成1
isNaN(0/0); // true

Notice:

  isNaN() 函数通常用于检测 parseFloat() 和 parseInt() 的结果,以判断它们表示的是否是合法的数字。

  isFinite() 函数用于检查其参数是否是无穷大。与 isNaN() 相反。