Вы можете увидеть проблему, если посмотрите на страницу W3Schools для parseInt
:
Если первый символ не может быть преобразован в число, parseInt () возвращаетNaN.
Вот почему возвращается следующее: NaN
:
console.log(parseInt("O123"));
Но если в строке несколько чисел, разделенных нецифровым символом, это не приведет к ошибке - просто вернется первое число:
Возвращается только первое число в строке!
console.log(parseInt("12b34"));
Эта информация также содержится на странице MDN для parseInt
:
Если первый символ не может бытьконвертируется в число, возвращается NaN.