Invertir una cadena en JavaScript
Hemos proporcionado una cadena de entrada y la tarea es invertir la cadena de entrada en JavaScript. Es una pregunta muy común que se hace en un entrevista de javascript . Hay varios métodos para invertir una cadena en javascript , que se describen a continuación con ejemplos.
Invertir una cadena en JavaScript
Ejemplos:
Input: str = 'techcodeview.com' Output: 'skeeGrofskeeG' Input: str = 'Hello' Output: 'olleH'
Invertir una cadena en JavaScript
Existen enfoques comunes para invertir una cadena en JavaScript. Estos son:
Tabla de contenidos
- Invertir una cadena en JavaScript
- Usando los métodos reduce() y split()
- Usando los métodos split(), reverse() y join()
- Usando el operador de extensión
- Usando los métodos Array.form() y reverse()
- Usando el operador Spread y el método reduce()
- Usando para bucle
- Usando substring() y un índice decreciente
- Usando recursividad
- Usando pila
1. Usando los métodos reduce() y split()
El método dividir() divide la cadena en una serie de caracteres y reducir() combina los caracteres en orden inverso usando el acumulador, invirtiendo efectivamente la cadena original.
Ejemplo: El siguiente código explica el uso del método de reducción y división para invertir una cadena.
JavaScript function reverseString(str){ const reversedString = str.split('').reduce((acc, char) =>char + cuenta, ''); console.log(cadenainvertida); } cadena inversa('techcodeview.com'); cadena inversa('JavaScript'); cadena inversa('TypeScript'); Producción
skeeGrofskeeG tpircSavaJ tpircSepyT
2. Uso de los métodos split(), reverse() y join()
El método dividir() divide la cadena en una matriz de caracteres, inversa() invierte la matriz y unirse() combina los caracteres invertidos en una nueva cadena, invirtiendo efectivamente la cadena original.
Ejemplo: El siguiente código utiliza los métodos split(), reverse() y join() para invertir una cadena en JavaScript.
javascript // Function to reverse string function reverseString(str) { const strRev = str.split('').reverse().join(''); console.log(strRev); } // Function call reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Producción
skeeGrofskeeG tpircSavaJ tpircSepyT
3. Uso del operador de extensión
El operador de extensión(…) se utiliza para distribuir los caracteres de la cadena str en elementos individuales. Luego se aplica el método reverse() para invertir el orden de los elementos, y join() se utiliza para combinar los elementos invertidos nuevamente en una cadena.
Ejemplo: El siguiente código utiliza el operador de extensión para dividir la cadena en una serie de caracteres e invertirla.
javascript // Function to reverse string function reverseString(str) { const strRev = [...str].reverse().join(''); console.log(strRev); } // Function call reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Producción
skeeGrofskeeG tpircSavaJ tpircSepyT
4. Uso de los métodos Array.form() y reverse()
El matriz.de() se utiliza para convertir la cadena en una matriz de caracteres individuales. El método inverso () Luego se aplica para invertir el orden de los elementos de la matriz. Finalmente, join() se usa para combinar los elementos invertidos nuevamente en una cadena.
Ejemplo: El siguiente ejemplo de código explica el enfoque anterior de manera práctica.
JavaScript // Function to reverse string function reverseString(str) { const strRev = Array.from(str).reverse().join(''); console.log(strRev); } // Function call reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); Producción
skeeGrofskeeG tpircSavaJ tpircSepyT
5. Uso del operador Spread y el método reduce()
El operador de propagación se puede utilizar para convertir una cadena en una matriz de caracteres y utilizar reducir() función en JavaScript para crear una cadena inversa a partir de una matriz concatenando la cadena en la dirección de avance.
Ejemplo: Este código implementa el operador de extensión y el método de reducción para invertir una cadena.
JavaScript // Function to reverse string function reverseString(str) { const strRev = [...str].reduce((x, y) =>y.concat(x)); console.log(strRev); } // Llamada a función ReverseString('techcodeview.com'); cadena inversa('JavaScript'); cadena inversa('TypeScript'); Producción
skeeGrofskeeG tpircSavaJ tpircSepyT
6. Uso del bucle for
El en bucle se utiliza para recorrer los caracteres de la cadena en orden inverso. Comenzando desde el último carácter (string.length – 1) y el carácter empujado a la nueva cadena inversa uno por uno.
Ejemplo: El siguiente código implementa el bucle for para invertir una cadena.
JavaScript // Function to reverse string function reverseString(str) { let strRev = ''; for (let i = str.length - 1; i>= 0; i--) { strRev += str[i]; } console.log(strRev); } // Llamada a función ReverseString('techcodeview.com'); cadena inversa('JavaScript'); cadena inversa('TypeScript'); Producción
skeeGrofskeeG tpircSavaJ tpircSepyT
7. Usando substring() y un índice decreciente
El subcadena () se utiliza para extraer el carácter en el índice i y agregarlo a la cadena invertida. Luego se disminuye el índice i.
Ejemplo: El siguiente código implementa el método substring() para invertir la cadena.
JavaScript // Function to reverse string function reverseString(str) { let reversedStr = ''; let i = str.length - 1; while (i>= 0) { cadena invertida += str.substring(i, i + 1); i--; } console.log(reversedStr); } // Llamada a función ReverseString('techcodeview.com'); cadena inversa('JavaScript'); cadena inversa('TypeScript'); Producción
skeeGrofskeeG tpircSavaJ tpircSepyT
8. Usando recursividad
En un enfoque recursivo, una función se llama a sí misma repetidamente, tomando la subcadena del segundo carácter y concatenándola con el primer carácter, hasta llegar al caso base, invirtiendo la cadena.
Ejemplo: Este código implementa la recursividad para invertir una cadena en JavaScript.
JavaScript function strReverse(str) { if (str === '') { return ''; } else { return strReverse(str.substr(1)) + str.charAt(0); } } console.log(strReverse('techcodeview.com')); console.log(strReverse('JavaScript')); console.log(strReverse('TypeScript')); Producción
skeeGrofskeeG tpircSavaJ tpircSepyT
9. Usando pila
En este enfoque utilizamos pila estructura de datos. Repetimos cada carácter de la cadena de entrada y lo colocamos en la pila. Luego, sacamos cada carácter de la pila uno por uno y los concatenamos para formar la cadena invertida.
Ejemplo: Este código usa la pila para invertir una cadena en JavaScript.
javascript function reverseString(str) { const stack = []; // Push each character onto the stack for (let char of str) { stack.push(char); } // Pop each character from the stack to reverse the string let reversed = ''; while (stack.length>0) { invertido += pila.pop(); } retorno invertido; } console.log(reverseString('GeeksForGeeks')); Producción
skeeGroFskeeG