Secret
L'instruction JSL If est en fait une fonction et renvoie une valeur.
print( if ( 1 < 2, "yes", "no" ) )
"Oui"
Si tu ne le savais pas, tu aurais peut-être écrit
if ( 1 < 2, print("yes"), print( "no" ) )
qui fonctionne aussi.
Secret deux
La fonction JSL If a besoin au moins deux arguments. Il peut y en avoir plus de trois ! S'il y a un nombre impair d'arguments, le dernier est le sinon valeur.
n = 17;
classification = if(
n<3, "toddlers",
n<13, "children",
n<20, "teens",
"adults"
);
show( n, classification );
n = 17 ;
classification = « adolescents » ;
Secret trois
La fonction JSL If gère les valeurs manquantes comme étant ni vraies ni fausses. Le sinon la valeur n'est PAS la réponse.
n = .;
classification = if(
n<3, "toddlers",
n<13, "children",
n<20, "teens",
"adults"
);
show( n, classification );
m = .;
classement = .;
Cela peut paraître assez surprenant si l’on considère que deux valeurs manquantes sont égales. Les opérateurs de comparaison de JMP renvoient tous une valeur manquante si l'un des (ou les deux) opérandes contient des valeurs manquantes. JMP utilise la fonction isMissing pour tester les éléments manquants :
n = .;
classification = if(
isMissing(n), "unknown",
n<3, "toddlers",
n<13, "children",
n<20, "teens",
"adults"
);
show( n, classification );
m = .;
classification = « inconnu » ;
Secret quatre
Il n'y a pas vraiment de secret, tout dépend du la toile .