![]() |
|
Модераторы: Sardar, Aliance |
![]()
|
|
| nuzhnoff |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.7.2008 Репутация: нет Всего: нет |
Задача: сложить числа двухзначного числа.
При вводе числа 12 должно получаться число 3 но пишет 12. Скажите где ошибка в коде? Спасибо. |
|||
|
||||
| нуп |
|
|||
|
Ботокодер ![]() ![]() Профиль Группа: Участник Сообщений: 987 Регистрация: 22.6.2009 Где: Кременчуг Репутация: 12 Всего: 33 |
|
|||
|
||||
| nuzhnoff |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 13 Регистрация: 18.7.2008 Репутация: нет Всего: нет |
Спасибо большое!
|
|||
|
||||
| IDVsbruck |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 778 Регистрация: 12.11.2006 Репутация: 7 Всего: 22 |
нуп не совсем прав.
В зависимости от браузера и платформы сумма цифр ввода "09" может быть как 9, так и 10. 9 - десятичное, а 10 - восьмеричное. Суть в том, что если не указывать радикс у parseInt, то строку "0" может привести не к десятеричному нулю, а к восьмеричному. А js такой оригинальный язык, что первое слагаемое задает тип суммы, то есть второе приведется в восьмеричному виду и на выходе получим 10 (если точнее, то 010). Лучше радикс у parseInt всегда указывать явно: parseInt(c, 10); Добавлено через 1 минуту и 33 секунды Прдн, десятичную 9 неправильно привел в восьмеричную систему. Везде вместо 10 подразумевается 11 (0, 01, 02, 03, 04, 05, 06, 07, 10, 11, 12, ...) |
|||
|
||||
| нуп |
|
|||
|
Ботокодер ![]() ![]() Профиль Группа: Участник Сообщений: 987 Регистрация: 22.6.2009 Где: Кременчуг Репутация: 12 Всего: 33 |
Точно!
|
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | JavaScript: для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |