Форум программистов, компьютерный форум, киберфорум
Наши страницы

JavaScript

Войти
Регистрация
Восстановить пароль
 
Михаил_96
19 / 19 / 7
Регистрация: 22.11.2015
Сообщений: 109
#1

El.value for number - JavaScript

24.05.2016, 21:11. Просмотров 69. Ответов 5
Метки нет (Все метки)

Привет, яваскриптовищики или джавасриптовищики!)
Мне стала интересна такая вот штука:
HTML5
1
<input id="el" type="number" value="3">
Javascript
1
2
3
console.log(el.value + el.value); // 33
console.log(el.value * el.value); // 9
console.log(el.value - (-el.value)); // 6
В 1 строчке скрипт выводит конкатенацию чисел в консоль, но почему конкатенацию?
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.05.2016, 21:11
Я подобрал для вас темы с готовыми решениями и ответами на вопрос El.value for number (JavaScript):

Побитовые операторы (number && + number | 0 || 0) - JavaScript
Наткнулся на такую функцию (приводит к int, либо возвращает 0, если это нельзя сделать.) : function toInt(number) { return number...

Object Number - JavaScript
Всем доброго времени суток, Подскажите пожалуйста как можно присвоить константе Number.MAX_VALUE значение запрошенное у пользователя? ...

Расширить объект number - JavaScript
как реализовать? Расширить объект number новыми свойствами и методами позволяющими задавать единицы измерения числового значения

массив, нужно получить ключ (number) - JavaScript
Здравствуйте, есть массив, нужно получить ключ (number 0-8) зная значения? var Massive = ; например: M = 2, Т = 4.

сложение лету данных из input number - JavaScript
Есть нижеуказанный код. Не получается динамически показывать сумму значений input id=&quot;number1&quot;+input id=&quot;number2&quot;. В innerHtml я эти...

js аналог html - формы type = number - JavaScript
есть ли js (jquery) аналог html-формы &lt;input type = 'number'&gt; в виде, указанном на картинке (т.е. кнопочки &quot;вверх&quot; и &quot;вниз&quot; находятся...

5
Sergey Yermak
123 / 62 / 27
Регистрация: 22.05.2016
Сообщений: 174
24.05.2016, 21:29 #2
Лучший ответ Сообщение было отмечено автором темы, экспертом или модератором как ответ
Скорее всего параметр "value" изначально идет как строка, а знак "+" для строк означает конкатенацию
0
Михаил_96
19 / 19 / 7
Регистрация: 22.11.2015
Сообщений: 109
24.05.2016, 21:50  [ТС] #3
А почему тогда с минусом или с умножением никаких ошибок нет?

Добавлено через 3 минуты
Аа, теперь понял
Javascript
1
console.log("5"-"4"); // 1
Но все равно как-то странновато
0
Sergey Yermak
123 / 62 / 27
Регистрация: 22.05.2016
Сообщений: 174
24.05.2016, 21:54 #4
Минуса и умножения для строк нет, только для чисел. Думаю из-за этого они преобразуются в числа сначала
0
Михаил_96
19 / 19 / 7
Регистрация: 22.11.2015
Сообщений: 109
24.05.2016, 22:05  [ТС] #5
Цитата Сообщение от Sergey Yermak Посмотреть сообщение
Минуса и умножения для строк нет, только для чисел. Думаю из-за этого они преобразуются в числа сначала
Да, похоже, что так и есть
0
kalabuni
Нарушитель
3134 / 2483 / 443
Регистрация: 18.04.2012
Сообщений: 7,491
25.05.2016, 06:36 #6
Цитата Сообщение от Михаил_96 Посмотреть сообщение
все равно как-то странновато
яваскрипт - язык со "слабой типизацией".
перед совершением каких-то действий парсер определяет тип операндов и, если предполагаемое действие с этими типами операндов совершить невозможно, то типы операндов автоматически преобразуются

ну и... value - это атрибут тега, а значения атрибутов -- это всегда строки (тип string)
1
25.05.2016, 06:36
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.05.2016, 06:36
Привет! Вот еще темы с ответами:

Ограничить минимальное и максимальное количество чисел в input type=“number” - JavaScript
Как с помощью скрипта ограничить минимальное и максимальное количество чисел в input type=&quot;number&quot;? Пробовала так, но это не...

Как сохранить введенное число в type="number" в localStorage? - JavaScript
Как сохранить введенное число в type=&quot;number&quot; в localStorage так, чтобы при обновлении страницы последнее значение выводилось в...

var i; ... try { i = Sqr (i); } catch (err) { WScript.echo ("Negative number " + i); } - JavaScript
Мужики, ногами не бейте, поскольку я в jscript новичок. Действую по аналогии с java. Итак, надо выполнить следующий код: var i; ... ...

type="number" и javascript - JavaScript
Как работать с этим : &lt;input type=&quot;number&quot; min=&quot;0&quot; max=&quot;10&quot; step=&quot;2&quot; value=&quot;6&quot;&gt; и Этим: input.stepUp(n) — увеличивает...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru