Avatar ·

Comment vérifier si une variable est une chaîne (string) en JavaScript ?

Bonjour à tous ! Je viens de commencer à apprendre JavaScript et j'ai rencontré un problème. J'ai une fonction qui prend un argument, et je dois m'assurer que c'est bien une chaîne, et non un nombre, un tableau ou autre chose. J'ai essayé d'utiliser `typeof`, mais il renvoie parfois des choses étranges. Voici un exemple de mon code : ```javascript function processInput(input) { if (typeof input === 'string') { console.log('C'est une chaîne !'); } else { console.log('Ce n'est pas une chaîne'); } } processInput('Bonjour'); // fonctionne processInput(123); // fonctionne processInput(new String('Test')); // dit "ce n'est pas une chaîne", alors que je m'attendais à une chaîne ``` Dans le dernier cas, je passe un objet `new String('Test')`, et mon code le détecte comme n'étant pas une chaîne. Mais c'est aussi une chaîne, juste enveloppée dans un objet ! Comment vérifier correctement ? Faut-il prendre en compte ces cas ? J'ai aussi entendu dire qu'il y a des pièges avec `typeof null`, qui renvoie `"object"`. Et que se passe-t-il si la variable est