PDA

Просмотр полной версии : Переменную типа Object привести к Number


bulya123
19.08.2009, 13:00
Всем привет!
Возникла следующая проблема, нужно срочно решить, буду очень благодарен за ответы:drinks:

Задача наладить связь между два флэшками через LocalConnection, одна выступает в роли отправителя данных, другая в роли получателя и обработчика.

У отправителя есть текстовое поле phone_txt и кнопка send_btn. Пользователь воодит номер телефона и жмет на кнопку отправить, функция validPhone проверяет верность введенных данных и при нажатии на кнопку отправляет переменную REQUEST во вторую флэшку.

ОТПРАВИТЕЛЬ:

phone_txt.border = true;
phone_txt.borderColor = 0x000000;
var REQUEST:XML;

var login_out:LocalConnection = new LocalConnection();


function validPhone(phoneNumber:String):Boolean {
if (phoneNumber.length == 10 && isNaN(phoneNumber) == false) {
return true;
} else {
return false;
}

}
send_btn.onRelease = function() {
if (validPhone(phone_txt.text) == true) {
var REQUEST:XML = new XML("<request type=\"login\"><phone>"+phone_txt.text+"</phone></request>");
login_out.send("login","phone",REQUEST);
trace("отправили");
} else {
trace("ошибка");
error_txt.text = "Телефон должен содержать 10 цифр";
}
};


REQUEST отправляется в виде XML файла так надо:)

Вся проблема в получателе. В получателе содержиться табличка USERS с номерами телефонов, пин-кодами и именами абонентов.

ПОЛУЧАТЕЛЬ

var USERS:Array = new Array(
[9035231127, 7777, "Петр Петрович", "Шлагбаум"],
[9034234233, 2343, "ВАСИЛИЙ", "ДУРАК"],
[9544665656, "Роман", "Трахтенберг"]
);

var k:Number = 0;
var login_in:LocalConnection = new LocalConnection();

login_in.connect("login");
login_in["phone"] = function (REQUEST:XML):Void {


for (i=0; i<USERS.length; i++) {

if (USERS[i][0] == REQUEST.firstChild.firstChild.firstChild) {

if(!isNaN(USERS[i][1])) {k=1; trace("1")} else {k=2; trace("2")}
} else {k=3; trace("3")}
}
};


Ошибка возникает при проверке на равенство введенного телефона и телефона из таблицы:
USERS[i][0] == REQUEST.firstChild.firstChild.firstChild

Типы переменных не совпадают USERS[i][0] типа Number, а REQUEST.firstChild.firstChild.firstChild типа Object.

Первый вопрос почему так получилось?:)
Второй как поправить?:)

В принципе все. Всем заранее большое спасибо за ответы, с меня :drinks:

udaaff
19.08.2009, 13:12
REQUEST.firstChild.firstChild.firstChild.nodeValue

bulya123
19.08.2009, 13:54
Большое, спасибо!
все гуд:)