Maison >interface Web >js tutoriel >Comment inverser une chaîne sur place en JavaScript ?

Comment inverser une chaîne sur place en JavaScript ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-15 16:25:15731parcourir

How to Reverse a String In-Place in JavaScript?

Inversion de chaîne sur place en JavaScript

Lorsque vous travaillez avec des chaînes en JavaScript, il peut y avoir des situations dans lesquelles vous devez inverser une chaîne dans -place sans compter sur des fonctions intégrées comme .reverse() ou .charAt(). Ceci peut être réalisé lorsque la chaîne est transmise à une fonction avec une instruction return.

Pour inverser une chaîne sur place :

  • Convertir en tableau : Utilisez la fonction split('') pour convertir la chaîne en un tableau de caractères.
  • Tableau inversé : Utilisez le méthode reverse() sur le tableau résultant pour inverser l'ordre des caractères.
  • Join Array : Enfin, utilisez la fonction join('') pour concaténer les caractères inversés dans une chaîne.

Exemple 1 (ASCII Caractères) :

function reverse(s) {
    return s.split("").reverse().join("");
}

const original = "Hello";
const reversed = reverse(original);
console.log(reversed); // "olleH"

Exemple 2 (prise en charge Unicode) :

Pour les chaînes contenant des caractères multi-octets (par exemple, UTF-16), un Une solution compatible Unicode est nécessaire.

  • Utiliser l'opérateur d'extension de tableau : L'opérateur ... (opérateur spread) crée un nouveau tableau avec des caractères individuels. Cela prend en charge les caractères Unicode et produit des chaînes Unicode valides.
function reverse(s) {
    return [...s].reverse().join("");
}
  • Split avec l'indicateur Unicode : Vous pouvez également utiliser split() avec le u (Unicode) drapeau comme séparateur, qui prend également en charge les caractères Unicode.
function reverse(s) {
    return s.split(/(?:)/u).reverse().join("");
}

En mettant en œuvre ces solutions, vous pouvez efficacement inverser une chaîne sur place dans une fonction, quel que soit le jeu de caractères utilisé.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn