[WLM] waar globale variabelen declareren/initialiseren?hoi

Status
Niet open voor verdere reacties.

niekfct

Terugkerende gebruiker
Lid geworden
19 jul 2006
Berichten
1.563
hoi

ik wilde een script maken, maar ik kan niet vinden waar ik de globale variabelen moet declareren/initialiseren.. kan iemand mij hiermee helpen??

alvast bedankt
 
Laatst bewerkt:
Dat kan overal in een javascript maar als je ze toch globaal gebruikt is het begin wel handig. :) Bv.
PHP:
var a, b, x, y;
zo heb je de variabelen a, b, x en y. Als je ze een beginwaarde wil geven kan het met:
PHP:
var a = 3, b = 7, x = 'hallo', y = new Array(0,1,2);
Het kan ook zonder var, met:
PHP:
var a = 3, b = 7;
c = a + b;
heb je de variabele c met waarde 10.

Alleen voor een lokale variabele, bv in een functie moet je var gebruiken omdat het anders een globale variabele wordt:
PHP:
function telop(a,b) {
 var c = a + b;
 d = a + b;
 };
c is lokaal d wordt globaal nadat de functie is aangeroepen.

In javascript hebben variabelen geen vast type, je hoeft dus niet op te geven of iets een integer of string is (wel bij een object of array):
PHP:
var a = 3, b = 7;
a = 'hallo';
alert(a + b);
geeft een alert met hallo7.


Vr.Gr. Egel.
 
ja, in het begin dacht ik ook.. maar als je met WLM een nieuw script maakt, staat er standaard dit:

PHP:
function OnEvent_Initialize(MessengerStart)
{
}

function OnEvent_Uninitialize(MessengerExit)
{
}

en dan kun je er

PHP:
function OnEvent_ChatWndSendMessage(ChatWnd, Message)
{
   if (Message.toLowerCase() == "hoi")
   {
       Message = "hai"
       return Message
   }
}

bij zetten.

maar stel nou dat ik het volgende wil:

PHP:
function OnEvent_ChatWndSendMessage(ChatWnd, Message)
{
   if (Message.toLowerCase() == "hoi" && waar == true)
   {
       Message = "hai"
       return Message
       waar = false
   }
}

dan geeft hij bij het debuggen aan dat 'waar' niet geinitaliseerd is (of gedeclareerd).

dat betekent dus dat ik globale variabelen nodig heb, maar als ik die gewoon helemaal bovenaan neerzet als dit:

PHP:
waar = true

function OnEvent_Initialize(MessengerStart)
{
}

function OnEvent_Uninitialize(MessengerExit)
{
}

dan wil het hele script niet eens lopen...

wat doe ik verkeerd?
 
Laatst bewerkt:
Ik weet niet wat WLM is. :o Heb je misschien een link met uitleg? :)

stel nou dat ik het volgende wil:
PHP:
function OnEvent_ChatWndSendMessage(ChatWnd, Message)
{
   if (Message.toLowerCase() == "hoi" && waar == true)
   {
       Message = "hai"
       return Message
       waar = false
   }
}
dan geeft hij bij het debuggen aan dat 'waar' niet geinitaliseerd is (of gedeclareerd).
Bij een return breekt een functie af, de zin waar = false; moet boven return Message;


Vr.Gr. Egel.
 
oh sorry.. :p Windows Live Messenger (daar kun je je eigen scripts maken)

en dat waar = false boven de return zou moeten zal wel kloppen (thnx daarvoor), maar hij blijft nog wel steeds zeggen dat 'waar' niet gedeclareerd is.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan