我正在嘗試執行某些表單驗證,並且由於某些原因,當我在輸入字段中輸入數字時,它將typeof顯示爲字符串。爲什麼JavaScript在其數字中顯示typeof爲「string」?
我真的不能把我的頭圍繞着這個。我嘗試過在線研究,但找不到答案。
任何幫助將非常感激。以下是我的代碼鏈接到jsfiddle示例。
預先感謝您
https://jsfiddle.net/eldan88/2xb47g78/
<button>Check if number</button>
<input id="number" type="number">
<script>
$("button").click(function() {
var number = $("#number").val();
alert(typeof (number));
if(typeof number !== "number"){
alert("not a number");
}
});
</script>
使用'.VAL()'總是會返回一個字符串。你可以試着先解析它,然後檢查它....'var number = parseInt($(「#number」)。val());' – AdamJeffers
@AdamJeffers將不起作用 - typeof(NaN)是「數字」。需要的是isNaN()函數。 – TAGraves
@TAGraves ...通過「檢查它」我的意思是檢查它解析爲int ...應該更清楚一些: -/ – AdamJeffers