Caractères de chaîne d'accès JavaScript comme tableau

Est-ce correct de faire ceci:

var myString="Hello!"; alert(myString[0]); // shows "H" in an alert window 

Ou devrait-on le faire avec soit charAt (0) ou substr (0,1)? Par «est-ce que ça va», je veux dire que cela fonctionnera sur la plupart des navigateurs, y a-t-il une recommandation sur les meilleures pratiques qui dit autrement?

Je vous remercie.

L'utilisation de charAt est probablement la meilleure idée, car elle transmet l'intention de votre code de manière plus précise. L'appel de substr pour un seul personnage est définitivement un sursaut.

 alert(myString.charAt(0)); 

L'accès aux caractères comme propriétés numériques d'une chaîne n'est pas standard avant ECMAScript 5 et ne fonctionne pas dans tous les navigateurs (par exemple, cela ne fonctionne pas dans IE 6 ou 7). Vous devez utiliser myString.charAt(0) plutôt que votre code doit fonctionner dans des environnements non ECMAScript 5. Sinon, si vous accédez à beaucoup de caractères dans la chaîne, vous pouvez transformer une chaîne en un tableau de caractères en utilisant sa méthode split() :

 var myString = "Hello!"; var strChars = myString.split(""); alert(strChars[0]);