Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 09.02.2013, 20:24
pivnoibaron вне форума Посмотреть профиль Отправить личное сообщение для pivnoibaron Найти все сообщения от pivnoibaron
  № 1  
Ответить с цитированием
pivnoibaron
 
Аватар для pivnoibaron

Регистрация: Apr 2011
Сообщений: 83
По умолчанию Проверка переменной на пустоту

Вот вопрос. Создаю переменную
Код AS3:
var a:Number;
в трейсе выводит что переменная a = NaN Но когда делаю условие
Код AS3:
if ( a == NaN ) { сделать что нибудь }
условие не срабатывает, почему?

Старый 09.02.2013, 20:27
KumoKairo вне форума Посмотреть профиль Отправить личное сообщение для KumoKairo Найти все сообщения от KumoKairo
  № 2  
Ответить с цитированием
KumoKairo
 
Аватар для KumoKairo

Регистрация: Jan 2013
Сообщений: 550
Записей в блоге: 1
во многих языках нельзя напрямую проверять на NaN через оператор "равно" (я на самом деле не знаю, можно ли вообще где-то), в документации написано кстати довольно подробно об этом.
Вместо этого используется метод isNaN:
Код AS3:
if (isNaN(a)) { сделать что нибудь }

Старый 11.02.2013, 09:53
nuToH вне форума Посмотреть профиль Отправить личное сообщение для nuToH Найти все сообщения от nuToH
  № 3  
Ответить с цитированием
nuToH
 
Аватар для nuToH

Регистрация: Mar 2006
Адрес: Ростов-на-Дону
Сообщений: 80
еще можно вот так:
Код AS3:
if ( a != a ) { trace( "NaN" ); }

Старый 11.02.2013, 10:27
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 4  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Сообщение от nuToH Посмотреть сообщение
еще можно вот так:
Код AS3:
if ( a != a ) { trace( "NaN" ); }
мм.. что это? Как это работает?

Старый 11.02.2013, 10:44
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 5  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
caseyryan, особенность (точнее даже свойство) Not-A-Number`а
__________________
hauts.ru

Старый 11.02.2013, 11:04
Dip52 вне форума Посмотреть профиль Отправить личное сообщение для Dip52 Найти все сообщения от Dip52
  № 6  
Ответить с цитированием
Dip52

Регистрация: Aug 2012
Сообщений: 297
Цитата:
Сообщение от nuToH Посмотреть сообщение
еще можно вот так:
Код AS3:
if ( a != a ) { trace( "NaN" ); }
Код AS3:
var n:Number;
if(!n)
{
	trace("Таки пуста!");
}
Тогда так.

Старый 11.02.2013, 11:18
stasuss вне форума Посмотреть профиль Отправить личное сообщение для stasuss Найти все сообщения от stasuss
  № 7  
Ответить с цитированием
stasuss
 
Аватар для stasuss

Регистрация: Jun 2011
Сообщений: 19
NaN не равен никакому числу, в том числе и себе. Так что все правильно.

Старый 11.02.2013, 12:15
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 8  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
caseyryan, особенность (точнее даже свойство) Not-A-Number`а
прикольно ) не знал о таком способе

Старый 11.02.2013, 12:17
incoob вне форума Посмотреть профиль Отправить личное сообщение для incoob Найти все сообщения от incoob
  № 9  
Ответить с цитированием
incoob

Регистрация: Mar 2008
Сообщений: 215
Цитата:
Сообщение от Dip52 Посмотреть сообщение
Код AS3:
var n:Number;
if(!n)
{
	trace("Таки пуста!");
}
Тогда так.
Нельзя так. Если n==0, то ваша "проверка на пустоту" ошибочно сработает.

Старый 11.02.2013, 14:36
gloomyBrain вне форума Посмотреть профиль Отправить личное сообщение для gloomyBrain Найти все сообщения от gloomyBrain
  № 10  
Ответить с цитированием
gloomyBrain
 
Аватар для gloomyBrain

блогер
Регистрация: Mar 2008
Адрес: РФ, Санкт-Петербург
Сообщений: 2,272
Записей в блоге: 5
Отправить сообщение для gloomyBrain с помощью ICQ Отправить сообщение для gloomyBrain с помощью Skype™
"Пустоты" вообще нет. Есть значение по-умолчанию, которое равно NaN для типа Number, 0 для int и uint, null для String и всего остального.
__________________
...вселенская грусть

Создать новую тему Ответ Часовой пояс GMT +4, время: 18:23.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 18:23.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.