Am dat un șir de intrare și sarcina este să inversăm șirul de intrare în JavaScript. Este o întrebare foarte frecventă pusă în a Interviu JavaScript . Există diferite metode de a inversa un șir JavaScript , care sunt descrise mai jos cu exemple.

Inversați un șir în JavaScript
Exemple:
Input: str = 'techcodeview.com' Output: 'skeeGrofskeeG' Input: str = 'Hello' Output: 'olleH'>
Inversați un șir în JavaScript
Există abordări comune pentru a inversa un șir în JavaScript. Acestea sunt:
Cuprins
- Inversați un șir în JavaScript
- Folosind metodele reduce() și split().
- Folosind metodele split(), reverse() și join().
- Utilizarea Spread Operator
- Folosind metodele Array.form() și reverse().
- Folosind Operatorul Spread și metoda reduce().
- Folosind for Loop
- Folosind substring() și un indice de scădere
- Utilizarea recursiunii
- Folosind Stack
1. Folosind metodele reduce() și split().
The metoda split(). împarte șirul într-o matrice de caractere și reduce() combină caracterele în ordine inversă folosind acumulatorul, inversând efectiv șirul original.
Exemplu: Codul de mai jos explică utilizarea metodei reduce și split pentru a inversa un șir.
Javascript function reverseString(str){ const reversedString = str.split('').reduce((acc, char) =>char + acc, ''); console.log(ReversedString); } reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript');>>>
Ieșire skeeGrofskeeG tpircSavaJ tpircSepyT>
2. Folosind metodele split(), reverse() și join().
The metoda split(). împarte șirul într-o matrice de caractere, reverse() inversează matricea și a te alatura() combină caracterele inversate într-un șir nou, inversând efectiv șirul original.
Exemplu: Codul de mai jos folosește metoda split(), reverse() și join() pentru a inversa un șir în 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');> Ieșire
The operator de răspândire(…) este folosit pentru a răspândi caracterele șirului str în elemente individuale. Metoda reverse() este apoi aplicată pentru a inversa ordinea elementelor, iar join() este folosit pentru a combina elementele inversate înapoi într-un șir.
Exemplu: Codul de mai jos folosește operatorul de răspândire pentru a împărți șirul într-o serie de caractere și pentru a-l inversa.
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');> Ieșire
skeeGrofskeeG tpircSavaJ tpircSepyT>
4. Folosind metodele Array.form() și reverse().
The Array.from() este folosit pentru a converti șirul într-o matrice de caractere individuale. The metoda reverse(). se aplică apoi pentru a inversa ordinea elementelor din matrice. În cele din urmă, join() este folosit pentru a combina elementele inversate înapoi într-un șir.
Exemplu: Exemplul de cod de mai jos explică abordarea de mai sus practic.
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');> Ieșire
skeeGrofskeeG tpircSavaJ tpircSepyT>
5. Utilizarea Spread Operator și metoda reduce().
The operator de răspândire poate fi folosit pentru a converti un șir într-o matrice de caractere și pentru a utiliza reduce() funcție în JavaScript pentru a crea un șir invers dintr-o matrice prin concatenarea șirului în direcția înainte.
Exemplu: Acest cod implementează operatorul de răspândire și metoda reduce pentru a inversa un șir.
Javascript // Function to reverse string function reverseString(str) { const strRev = [...str].reduce((x, y) =>y.concat(x)); console.log(strRev); } // Apel de funcție reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript');>>>Ieșire
skeeGrofskeeG tpircSavaJ tpircSepyT>
6. Folosind for Loop
The pentru buclă este folosit pentru a itera prin caracterele șirului în ordine inversă. Începând de la ultimul caracter (lungimea str. – 1) și caracterul împins la noul șir invers, unul câte unul.
Exemplu: Codul de mai jos implementează bucla for pentru a inversa un șir.
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); } // Apel de funcție reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript');>>>
Ieșire 7. Folosind substring() și un Index de Decrementare The subșir () este folosită pentru a extrage caracterul de la indexul i și pentru a-l adăuga la șirul inversat. Indicele i este apoi decrementat.
c# conține șir
Exemplu: Codul de mai jos implementează metoda substring() pentru a inversa șirul.
Javascript // Function to reverse string function reverseString(str) { let reversedStr = ''; let i = str.length - 1; while (i>= 0) { reversedStr += str.substring(i, i + 1); i--; } console.log(reversedStr); } // Apel de funcție reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript');>>>
Ieșire 8. Utilizarea recursiunii Într-o abordare recursivă, o funcție se autoapelează în mod repetat, luând subșirul de la al doilea caracter și concatenându-l cu primul caracter, până când se ajunge la cazul de bază, inversând șirul.
Exemplu: Acest cod implementează recursiunea pentru a inversa un șir în 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'));>
Ieșire 9. Folosind StackÎn această abordare folosim grămadă structură de date. Repetăm fiecare caracter al șirului de intrare și îl împingem în stivă. Apoi, scoatem fiecare caracter din stivă unul câte unul și le concatenăm pentru a forma șirul inversat.
Exemplu: Acest cod folosește stiva pentru a inversa un șir în 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) { inversat += stack.pop(); } întoarcere inversată; } console.log(reverseString('GeeksForGeeks'));>>>
Ieșire