[英]Javascript check if an string is a valid number
檢查字符串是否為 javascript 中的有效數字的正確方法是什么?
通常我們使用isNaN(str)
,這在所有情況下都很好用,但除外,
當前行為:
isNaN("1") = false, is a number,
isNaN("1 ") = false, But this is a string.
處理這個問題的正確方法是什么?
預期成績:
isNotNumber("1") = false
isNotNumber("1 ") = true
這有點奇怪。 我不知道任何本機 JS 解決方案,但您可以執行以下操作:
function isNotNumber(subj: string): boolean {
const nr = +subj;
return isNaN(nr) || nr.toString().length !== subj.length;
}
我相信使用正則表達式可以輕松實現這一點
const isNotNumber = (value) =>./^\d+$/.test(value) console.log(isNotNumber("1")) // false console.log(isNotNumber(" 1")) // true
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.