У меня есть проблема с преобразованием строки javascript в число
Я экспериментирую с датами и узнал значения из ввода типа даты
это струны. Я хочу, чтобы преобразовать число частей строку, которая возвращается, чтобы цифры.
Я полагаю, что лучший способ описать то, что я пытаюсь сделать, - это вставить код.
вот соответствующий HTML - код
<input id="dateinput" type="date"> </input> <input type="button" onclick="calcdiff()" value="submit"> </input>
Вот мой javascript-код. элемент ctc-это то место, где я тестирую, чтобы увидеть, получаю ли я правильный вывод.
function calcdiff() { var datetest = document.getElementById("dateinput").value; var yearString = datetest.slice(0,4); var monthString = datetest.slice(5,7); var dayString = datetest.slice(8,10); var yearNum = Number("yearString"); var monthNum = Number("monthString"); var dayNum = Number("dayString"); document.getElementById("ctc").innerHTML = yearNum;
Что я уже пробовал:
когда я использую typeof yearNum, я вижу, что он преобразуется в числовой тип. Однако,
когда я просто устанавливаю innerHTML в yearNum, как в приведенном выше коде, он возвращает "NaN".
Это даже несмотря на то, что если я настрою элемент ctc на отображение yearString, он отобразит "2018", если это тот год, который я выбираю из элемента ввода даты.
Что не так с кодом, поскольку он возвращает "NaN", а не число?