webForumDet fria alternativet

decklarera en variable

Flash

2 svar · 348 visningar · startad av Stig

Medlem sedan dec. 2001146 inlägg
Frågan#1

Hur gör jag för att kunna kontrolera om en variable värde är en textsträng eller ett tal (number)? Jag vill kunna köra en if sats och göra på ett sätt om det är en text sträng och på ett annat sätt om det är ett tal. Vad det är som kommer text sträng eller ett tal vet jag inte i förväg.

Mycket tacksam för svar då jag kört fast...

Medlem sedan jan. 200032 inlägg
#2

typeof()

Hej!

Pröva med typeof(minVariabel)
typeof() kan skilja på String, MovieClip, Objekt, Number, Boolean och Funktion.

En iflösning kan se ut som följer:

if (typeof(minVariabel) == "string") {trace(minVariabel) }
if (typeof(minVariabel) == "number") {trace(minVariabel) }
Medlem sedan juni 200546 inlägg
#3

typeof är en smidig lösning så länge som datatyperna verkligen är olika (vilket de kanske är i Stigs fall).

Om man däremot har en sträng som innehåller ett giltigt tal (t.ex om användaren matat in ett nummer i ett inmatningsfält) kan man istället använda sig av metoden isNaN().

myVar = "123456";
trace ( isNaN ( myVar ) ); // false

myVar = "abc123";
trace ( isNaN ( myVar ) ); // true
267 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
130 ms — deklarationer (db)
0 ms — hämta statistik (cache)
134 ms — hämta tråd, inlägg och bilagor (db)
129 ms — ändringar (db)