1.parseInt(string,radix) 解析整数
parseInt("dgei23"); // NaN parseInt("3 blind mice"); // 3 parseInt("-12.34"); // -12 parseInt("0xFF"); // 255 parseInt("0.1"); // 0 parseInt(".1"); // 因为整数不能以‘.‘开始 parseInt("$72.47"); // NaN,因为整数不能以‘$‘开始
指定基数radix
parseInt("08"); // 0 (在ECMAscript3中是0,因为会被认为是8八进制) parseInt("08",10); // 8 (这样才是10进制)
//都是返回15
parseInt("1111", 2); parseInt(021, 8); parseInt("17", 8); parseInt("015", 10); // parseInt(015, 10); will return 13 parseInt(15.99, 10); parseInt("15*3", 10); parseInt("15e2", 10); parseInt("15px", 10); parseInt("15,123", 10); parseInt("12", 13); parseInt(" F", 16); parseInt(" 0xF", 16); parseInt("FXX123", 16);
// 更加严格的解析整数函数
function filterInt(value){ //-+符号在前 if(/^(\-|\+)?([0-9]+|Infinity)$/).test(value){ return Number(value); } return NaN; } filterInt("421"); // 421 filterInt("-421"); // -421 filterInt("+421"); // 421 filterInt("Infinity"); // Infinity filterInt("421e+0"); // NaN filterInt("421hop"); // NaN filterInt("hop1.618033"); // NaN filterInt("1.618033"); // NaN
parseFloat(string) 解析浮点数
parseFloat("dgei2.3"); // NaN parseFloat("3.14 meters"); // 3.14 parseFloat("0.1"); // 0.1 parseFloat(".1"); // 0.1 //都是返回3.14 parseFloat("3.14"); parseFloat("314e-2"); parseFloat("0.0314E+2"); parseFloat("3.14more non-digit characters");
// 更加严格的解析小数函数
function filterFloat(value){ if(/^(\-|\+)?([0-9]+|(\.[0-9]+)?|Infinity)$/).test(value){ return Number(value); } return NaN; } filterFloat("421"); // 421 filterFloat("-421"); // -421 filterFloat("+421"); // 421 filterFloat("Infinity"); // Infinity filterFloat("1.61803398875"); // 1.61803398875 filterFloat("421e+0"); // NaN filterFloat("421hop"); // NaN filterFloat("hop1.61803398875"); // NaN
时间: 2024-10-11 18:33:45