PDA

Просмотр полной версии : 108 != 108 //(О_о)


KirAmp
21.07.2010, 19:33
Здравствуйте, сегодня случилось нечто непонятное....
Дело в том что я читаю xml и позже сравниваю значения в массиве и у меня получилось вот что

trace (a[i]); // 108
trace(a[i] == 108) // false
trace(a[i] == "108")// false
trace(a[i].toString == "108") //false
trace(Number(a[i]) == 108) //false
trace(108 == 108) //true
trace("108" == "108") //true

Добавлено через 6 минут
trace(Number(a[i])) // NaN
trace((a[i]).toString()) // 108

etc
21.07.2010, 19:51
a[i] очевидно is XML.

KirAmp
21.07.2010, 19:55
etc
Как конвертировать? или как сравнить toString не помогает

etc
21.07.2010, 19:58
Ну потому что надо не сравнивать строку со ссылкой на метод toString, а вызывать этот самый метод toString().

KirAmp
21.07.2010, 20:03
etc....
я тут описался .toString() я писал когда трейсировку делал

etc
21.07.2010, 20:06
Так работает или нет?

KirAmp
21.07.2010, 20:08
ммм.... я _root ненаписал когда с тоСтрингом делал...... сор что потревожил

rainbowrussia
22.07.2010, 00:01
На будущее пригодится "typeof(expression)"

Котяра
22.07.2010, 00:46
trace(String(a[i])== "108")// должно быть true

in4core
22.07.2010, 00:56
trace(new String(a[i])== "108")// должно быть true
вот так должно

Котяра
22.07.2010, 01:02
с чего вдруг? зачем нам объект стринг - нам надо приведение