String. prototype. at()
Renvoie le caractère à l’indice donné. Les indices négatifs se comptent depuis la fin, donc at(-1) est le dernier caractère.
- Renvoie
- Une chaîne d’un caractère (une unité UTF-16), ou
undefinedquand l’indice dépasse la chaîne. - Modifie l’original
- Non
Exemple
#const word = 'Cosmos'
console.log(word.at(0))
console.log(word.at(-1))
console.log(word.at(-2))
console.log(word.at(10))Définition et utilisation
#La méthode at() renvoie une chaîne d’un seul caractère à la position indiquée. Pour les indices positifs, elle se comporte comme les crochets, mais comprend en plus les indices négatifs : -1 est le dernier caractère, -2 l’avant-dernier, et ainsi de suite.
Grâce à cela, text.at(-1) suffit là où il fallait écrire text[text.length - 1]. Quand l’indice tombe hors de la chaîne, la méthode renvoie undefined. Les décimales sont tronquées vers zéro.
Comme les autres méthodes basées sur des indices, at() travaille en unités UTF-16. Pour les emoji occupant deux unités, elle ne renvoie que la moitié du caractère ; mieux vaut alors utiliser [...text].at(-1).
Syntaxe
#string.at(index)Paramètres
#index
number
Position du caractère.0est le premier caractère, et les valeurs négatives se comptent depuis la fin (-1est le dernier).
Plus d’exemples
#const code = 'CSS'
console.log(code.at(-1))
console.log(code[-1])
console.log(code[code.length - 1])
console.log(code.charAt(-1) === '')function ensureDot(sentence) {
return sentence.at(-1) === '.' ? sentence : sentence + '.'
}
console.log(ensureDot('Leçon terminée'))
console.log(ensureDot('Module validé.'))Compatibilité des navigateurs
#Largement disponible
Fonctionne dans tous les navigateurs modernes, y compris sur mobile. Vous pouvez l’utiliser sans crainte.
- Chrome
- Edge
- Firefox
- Safari
Bonnes pratiques
#at()renvoie un seul caractère. Pour récupérer les derniers caractères, utilisezslice(-3).text[-1]ne compte pas depuis la fin : il cherche une propriété nommée « -1 », donc renvoieundefined. Utilisez toujoursat()pour les indices négatifs.
Entrées associées
#- String.prototype.charAt()Renvoie le caractère à l’indice donné. Hors de la plage valide, elle renvoie une chaîne vide au lieu de undefined.
- String.prototype.slice()Renvoie un fragment de la chaîne entre un indice de départ et un indice de fin (exclu). Prend en charge les indices négatifs.
- String.prototype.lengthLa longueur d’une chaîne, c’est-à-dire le nombre d’unités de code UTF-16. La propriété est en lecture seule.
- Array.prototype.at()Renvoie l’élément à l’indice donné, y compris compté depuis la fin.
Vous voyez une erreur ou il manque un exemple ? Écrivez-nous.