Une fonction est définie par la structure suivante :
on nomdemafonction(param1, param2,...)
...
return unevaleur
end
Une ligne return est nécessaire dès lors que l'appel de votre fonction est sensé retourner un résultat : set x to nomdemafonction(param1, param2).
Aucun a priori n'est fait sur la classe des variables, aussi vous devrez parfois tester la validité des arguments ou utiliser un bloc try. Ainsi, la fonction suivante peut aussi bien s'appliquer à des nombres qu'à du texte :
on minimumvalue(x, y)
if (x < y) then
return x
else
return y
end if
end minimumvalue
minimumvalue(1, 1.2)
--1
minimumvalue("a", "b")
--"a"
AppleScript permet également de définir des commandes sous une autre forme de syntaxe, que vous trouverez dans les dictionnaires des applications (menu Fichier ▸ Ouvrir un dictionnaire) et d'ensemble additionnels de commandes pour AppleScript appelés compléments de pilotage ou osax (menu Fichier ▸ ouvrir un dictionnaire ▸ Scripting Additions). Par exemple le complément de pilotage Satimage.osax propose la commande format :
format real -- the number
into string -- the formatting string, using #,^,O,.,%,',(,),+,-
[underflow test boolean] -- switch to scientific format if the number is too small with respect to the formatting string (default: false)
Result : string -- the formatted number
Ce qui veut dire que vous pouvez utiliser cette commande par exemple de la façon suivante (les arguments entre crochets dans le dictionnaire sont optionnels) :
set s to format 1.2345 into "##.##"
--"1.23"
|