Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> parseInt('08'); 
V
    Опции темы
brother79
Дата 27.4.2010, 06:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 471
Регистрация: 18.8.2009

Репутация: 1
Всего: 6



Столкнулся с такой бедой:

parseInt('08'); и parseInt('09'); - возвращает 0, а parseInt('07'); и остальные - как положенно. В итоге DatePicker  не может сохранить 8-е и 9-е чисто и месяц. Что за загадка природы?

Да, забыл указать, тестил на FF последнем

Это сообщение отредактировал(а) brother79 - 27.4.2010, 06:38


--------------------
PM MAIL WWW   Вверх
eXcile
Дата 27.4.2010, 06:43 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 168
Регистрация: 8.2.2007

Репутация: нет
Всего: 5



насколько я помню, если вы не указываете систему счисления в этой функции, то по дефолту считается восьмиричная, это как раз и объясняет, почему после "07" у вас выходит 0
попробуйте
parseInt("08",10);
--------------------
Не становитесь рабом шаблона [Винсент Ван Гог]
PM MAIL   Вверх
comtat
Дата 27.4.2010, 07:11 (ссылка) |   (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1310
Регистрация: 2.5.2006
Где: Россия, Казань

Репутация: 4
Всего: 71



Код

var a='08';
~~a; // Вернет 8 или
a*1; // Вернет 8 или
Number(a); // Вернет 8 или
Math.floor(a); // Вернет тоже 8



--------------------
Рожденный в СССР !!!
ExtJS - мой фреймворк 
PM   Вверх
ksnk
Дата 27.4.2010, 08:20 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


прохожий
****


Профиль
Группа: Комодератор
Сообщений: 6855
Регистрация: 13.4.2007
Где: СПб

Репутация: 84
Всего: 386



eXcile, по дефолту считается что написано, или десятичная. Для цифр, начинающихся с нуля - восьмеричная система, с начинающихся с 0x - шестнадцатеричная 
Код

alert([parseInt('0x10'),parseInt('010'),parseInt('10')])



--------------------
Человеку свойственно ошибаться, программисту свойственно ошибаться профессионально ! user posted image
PM MAIL WWW Skype   Вверх
azesmcar
Дата 27.4.2010, 08:59 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


uploading...
****


Профиль
Группа: Участник Клуба
Сообщений: 6291
Регистрация: 12.11.2004
Где: Армения

Репутация: 1
Всего: 211



Цитата(eXcile @  27.4.2010,  06:43 Найти цитируемый пост)
насколько я помню, если вы не указываете систему счисления в этой функции, то по дефолту считается восьмиричная, это как раз и объясняет, почему после "07" у вас выходит 0

smile 
http://www.w3schools.com/jsref/jsref_parseInt.asp
второй аргумент функции parseInt исправит положение, а по умолчанию
Цитата

If the radix parameter is omitted, JavaScript assumes the following:
    * If the string begins with "0x", the radix is 16 (hexadecimal)
    * If the string begins with "0", the radix is 8 (octal). This feature is deprecated
    * If the string begins with any other value, the radix is 10 (decimal)


PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0479 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.