J'utilise String.split
pour analyser une chaîne de ligne de commande dans un tableau de chaînes. Le résultat est ensuite utilisé pour appeler une fonction à l'aide de l'API Function.apply
.Parse valeurs booléennes dans les chaînes à utiliser avec Function.apply
Si apply(null, ["17"])
est appelée avec cette fonction:
static function test(foo:int):void
{
trace(foo, typeof(foo));
}
fonctionne comme prévu (sortie: 17 number
).
Toutefois, l'appel apply(null, ["false"])
ou apply(null, ["0"])
avec cette fonction:
static function test(foo:Boolean):void
{
trace(foo, typeof(foo));
}
ne fonctionne pas (résultat attendu: false Boolean
; sortie réelle: true Boolean
).
Existe-t-il un moyen de lui faire reconnaître "true"
et "false"
(ou autre chose) comme des valeurs booléennes, tout comme il le fait avec les chaînes numériques? Idéalement, "true"
et "false"
devraient également rester des valeurs de chaîne valides.