Модераторы: SoWa
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Приведение типов, String -> Number 
:(
    Опции темы
AlDev
Дата 21.3.2006, 06:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный идиотъ
***


Профиль
Группа: Участник Клуба
Сообщений: 1927
Регистрация: 17.4.2005
Где: Irk, rus

Репутация: 8
Всего: 50



Как вам такой прикол:
Код

var str_num:String = '046';
trace (str_num);
trace (Number(str_num)); 


Унадайте, что будет в output? 046, 46?
А вот фиг. Получаем:
Код

046
38


Кстати, подобный прикол идет с любыми числами, в String начинающимися с нулей.

Пробуем через конструктор Number:
Код

trace (new Number(str_num)); 

и получаем опять не то, что надо…

теперь попробуем parseInt:
Код

trace (parseInt(str_num)); 

И опять не то!

Закономерный вопрос: почему? и как бороться?
Ответ просто до банальности smile Числа, начинающиеся с 0, воспринимаются как 8-ричные.
Итак, дабы правильно приводить данные числа, используем:
Код

var str_num:String = '046';
trace (parseInt(str_num,10)); 

или parseFloat:
Код

var str_num:String = '046';
trace (parseFloat(str_num)); 

©ам допер
http://batsuev.com/wp/2006/03/21/flash-8-string-number/
PM MAIL WWW ICQ YIM MSN   Вверх
Maksys
Дата 21.3.2006, 20:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Future Splasher
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 15.6.2005
Где: Екатеринбург

Репутация: 3
Всего: 17



Респект тебе... я бы так сразу не допер.


--------------------
 С уважением, BiMaWa™©.
user posted image
user posted image
PM MAIL ICQ Skype GTalk   Вверх
szz
Дата 22.3.2006, 10:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 31.5.2005
Где: Moscow, Jerusalem

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



Да что-ж тут допирать, ребята? Вы классикой программирования не увлекаетесь? Это ж традиция синтаксиса, появившаяся еще в конце 60-х. Так записываются числа в С: с нуля - восьмеричные, с 0х - шестнадцатеричные. Для меня это так же наглядно и очевидно, как, например слова "for", "while" или "if-else" smile

Они в С даже подсвечиваются по-разному:
Код

int a = 123;
int b = 0123;
int c = 0x123;

Добавлено @ 10:35
ага, что-то не подсветились smile тут подсветчик С++ упрощенный smile


--------------------
PM   Вверх
AlDev
Дата 22.3.2006, 10:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный идиотъ
***


Профиль
Группа: Участник Клуба
Сообщений: 1927
Регистрация: 17.4.2005
Где: Irk, rus

Репутация: 8
Всего: 50



ну да, просто я выдирал дробную часть числа и долго сидел и тупил, почему работает не так, как должно smile
PM MAIL WWW ICQ YIM MSN   Вверх
Maksys
Дата 24.3.2006, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Future Splasher
***


Профиль
Группа: Завсегдатай
Сообщений: 1289
Регистрация: 15.6.2005
Где: Екатеринбург

Репутация: 3
Всего: 17



Цитата(szz @ 22.3.2006, 13:34)
Да что-ж тут допирать, ребята? Вы классикой программирования не увлекаетесь? Это ж традиция синтаксиса, появившаяся еще в конце 60-х. Так записываются числа в С: с нуля - восьмеричные, с 0х - шестнадцатеричные.  Для меня это так же наглядно и очевидно, как, например слова "for", "while" или "if-else" smile

Они в С даже подсвечиваются по-разному:
Код

int a = 123;
int b = 0123;
int c = 0x123;

Добавлено @ 10:35
ага, что-то не подсветились smile тут подсветчик С++ упрощенный  smile

а я ваще тока 123 пользуюсь редко когда 0х123, а 0123 ваще не юзаю, даже в байсике smile


--------------------
 С уважением, BiMaWa™©.
user posted image
user posted image
PM MAIL ICQ Skype GTalk   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Flash"
AlDev
SoWa
  • Если вы хотите предложить кому-либо работу, то пишите или в личку, или оставляйте сообщения в специально предназначеном для этого форуме "Объявления о найме специалистов"
  • Один вопрос - одна тема. Не надо переходов от одного вопроса к другому.
  • Если вы хотите показать какой-нибудь ваш мульт, причём показать, а не предоставить исходник, то вам сюда
  • Вопросы по разработке интернет-приложений на Flex и вопросы по MXML пишите в раздел Flex
  • Смотрим в будущее. ActionScript 3 обсуждается в форуме ActionScript 3
  • Новости из мира Flash.
  • New! [code=ascript][/code] - подсветка ActionScript + wikipedia help

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, AlDev, SoWa.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | ActionScript 1,2 | Следующая тема »


 




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


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

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