據我瞭解你的問題,你要求測試 檢測一個字符串是否代表數字值。
簡單的測試應該是
function test() {
var number="1234"
return (number==Number(number))?"number":"string"
}
AS號,如果沒有所謂的new
關鍵字的字符串轉換成一個數字。 如果變量內容未被觸及(==
會將數值轉換爲字符串) 您正在處理一個數字。這是一個字符串,否則。
function isNumeric(value) {
return (value==Number(value))?"number":"string"
}
/* tests evaluating true */
console.log(isNumeric("1234")); //integer
console.log(isNumeric("1.234")); // float
console.log(isNumeric("12.34e+1")); // scientific notation
console.log(isNumeric(12)); // Integer
console.log(isNumeric(12.7)); // Float
console.log(isNumeric("0x12")); // hex number
/* tests evaluating false */
console.log(isNumeric("1234e"));
console.log(isNumeric("1,234"));
console.log(isNumeric("12.34b+1"));
console.log(isNumeric("x"));
,因爲你可以通過 「存放」 這將是唯一的字符串。 你需要給變種數= 12345 –
看一看在這個答案中定義的函數 - http://stackoverflow.com/questions/18082/validate-numbers-in-javascript-isnumeric – ipr101