@volerass

Как сумировать два числа?

Есть один input, кнопка и число, заданное сначала. В input пользователь вводит числа. При нажатии кнопки выполняется функция, которая выводит сумму данных двух чисел на страницу.

Но числа у меня не суммируются, а просто соединяются. Вот мой код
function c(){
  function createIncrementor(sum) {
    return function (num) {
      return (w.innerHTML=sum + num);
    };
  }
  const addOne = createIncrementor(a.innerHTML);
  addOne(d.value)
}


HTML:
<h1 id="a">1000</h1>
 
  <input type="number" id='d'>
  <button id='c' onclick="c()">sdf</button>
  <div id="w"></div>
  • Вопрос задан
  • 92 просмотра
Пригласить эксперта
Ответы на вопрос 4
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
1 + 1 === 2
'1' + '1' === '11'
Ответ написан
Aleksandr-JS-Developer
@Aleksandr-JS-Developer
Бери и делай
Вам нужно введённые данные преобразовать в тип число

function c(){
function createIncrementor(sum) {
    return function (num) {
      return (w.innerHTML=+sum + +num);
    };
  }
  const addOne = createIncrementor(a.innerHTML);
  addOne(d.value)
  
}
Ответ написан
sergiks
@sergiks Куратор тега JavaScript
♬♬
лечится плюсами:
-  const addOne = createIncrementor(a.innerHTML);
+  const addOne = createIncrementor(+a.innerHTML);

-  addOne(d.value)
+  addOne(+d.value)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы