Les fonctions prédéfinies dans JavaScript, interface de test
JavaScript dispose de fonctions accessibles dans tout script. Vous pouvez utiliser cette interface pour les tester sur des navigateurs différents.
Entrer une expression puis cliquer sur la fonction à tester, la réponse s'affichera sous le bouton.
Les fonctions de test vérifient le type ou le contenu d'une variable.
isNaN
Teste si un objet est un nombre ou non.
if(isNaN(x))
{
alert(x + " n'est pas un nombre.");
}
isFinite
Teste une expression et retourne vrai si le résultat c'est un nombre fini.
if(isFinite(x + 5 * y))
{
alert("Le résultat est un nombre fini.");
}
Si la valeur assignée est NaN, le résultat retourné par isFinite sera false.
Les fonctions de codage transforment une chaîne de caractère en code UTF-8 qui puisse être utilisé dans une URL, donc dans un nom de fichier et ses paramètres. Ou l'inverse.
encodeURI
Transforme une chaîne de caractère en UTF-8 en remplaçant certains caractères par des codes.
Les codes suivants ne sont pas remplacés:
/ ? : @ & = + $ , - _ . ! ~ * ' ( ) # - _ . ! ~ * ' ( )
Pas plus que les lettres et les chiffres.
L'espace blanc est remplacé par %20.
encodeURIComponent
La différence avec encodeURI, est que certains caractères qui ont une utilité pour les méthodes GET et POST, sont aussi codés.
On a un chemin et un nom de fichier valide sous un système d'exploitation, contenant éventuellement des espaces, des virgules, des & et des +.
Or ces codes ont un rôle de séparateur dans une URL.
Pour créer une URL contenant le nom de fichier, ces caractères doivent être convertis:
/ ? : @ & = + $ , #
decodeURI
C'est la fonction inverse à encodeURI. Elle recrée un texte ordinaire à partir d'une chaîne UTF-8.
decodeURIComponent
Fonction inverse à encodeURIcomponent, elle substitue des caractères normaux aux codes remplacés y compris les caractères spéciaux désignés ci-dessus.
Les fonctions de transformation en nombre ont pour argument une chaîne dont le contenu correspond à un nombre, ou une variable à laquelle est assignée une telle chaîne ou un nombre.
parseInt
Convertit une chaîne en nombre entier. Il est possible de choisir la base que l'on passe en second paramètre optionnel: 10 (décimal), 8 (octal), 16 (hexadécimal).
Par défaut la base 10 est appliquée.
Exemple:
var x = parseInt("123");
affiche 123, mais:
var x = parseInt("123" , 16)
affichera 291.
On peut spécifier un nombre hexadécimal avec le préfixe 0x et octal avec 0.
var x = parseInt("0xFFFF", 16);
Sans la base 16, cela retourne 0.
parseFloat
Convertit une chaîne contenant une valeur numérique en nombre réel. Si la chaîne contient un nombre avec des décimales, la fonction parseInt ne conserve que la partie entière, contrairement à parseFloat.
Les valeurs admises peuvent avoir la forme 1.2 ou 0.5 ou 1e-2 ou 0.1E+2.