var a = prompt('Enter your number: ', ''); // If we enter '22' (for example)
var b = parseInt(a, 10);
alert(b); // Our result is NaN. Why?
答案 0 :(得分:2)
通过按字面意义输入'22'
,您正在传递一个不能解释为数字的字符串。即使您的字符串中有数字,也与键入kjlafsklja393lkadsfkj
会是NaN
完全一样。
答案 1 :(得分:0)
如果要从带引号的字符串中提取数字,请使用match
和regex
。 \d+
是“一个或多个数字”。
const a = prompt('Enter your number: ', '');
const match = a.match(/\d+/);
const b = parseInt(match, 10);
console.log(b);