Obrátit řetězec v JavaScriptu

Obrátit řetězec v JavaScriptu

Zadali jsme vstupní řetězec a úkolem je obrátit vstupní řetězec v JavaScriptu. Je to velmi častá otázka položená v a JavaScript rozhovor . Existují různé způsoby, jak obrátit řetězec JavaScript , které jsou popsány níže s příklady.

reverse-a-string-in-js

Obrátit řetězec v JavaScriptu

Příklady:

  Input:   str = 'techcodeview.com'   Output:   'skeeGrofskeeG'    Input:   str = 'Hello'   Output:   'olleH' 

Obrátit řetězec v JavaScriptu

Existují běžné přístupy k obrácení řetězce v JavaScriptu. Tyto jsou:

Obsah


1. Použití metod reduction() a split().

The metoda split(). rozdělí řetězec na pole znaků a snížit() kombinuje znaky v obráceném pořadí pomocí akumulátoru, čímž účinně obrátí původní řetězec.

Příklad: Níže uvedený kód vysvětluje použití metody snížení a rozdělení k obrácení řetězce.

Javascript
function reverseString(str){  const reversedString =   str.split('').reduce((acc, char) =>char + acc, '');  console.log(reversedString); } reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); 

Výstup
skeeGrofskeeG tpircSavaJ tpircSepyT 

2. Použití metod split(), reverse() a join().

The metoda split(). rozdělí řetězec na pole znaků, reverse() obrátí pole a připojit se() spojuje obrácené znaky do nového řetězce, čímž účinně převrací původní řetězec.

Příklad: Níže uvedený kód používá metody split(), reverse() a join() k obrácení řetězce v JavaScriptu.

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'); 

Výstup
skeeGrofskeeG tpircSavaJ tpircSepyT 

3. Použití Spread Operator

The operátor šíření (…) slouží k rozložení znaků řetězce str do jednotlivých prvků. Potom se použije metoda reverse() k obrácení pořadí prvků a join() se použije ke spojení obrácených prvků zpět do řetězce.

Příklad: Níže uvedený kód používá operátor spread k rozdělení řetězce na řadu znaků a jeho obrácení.

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'); 

Výstup
skeeGrofskeeG tpircSavaJ tpircSepyT 

4. Použití metod Array.form() a reverse().

The Array.from() se používá k převodu řetězce na pole jednotlivých znaků. The metoda reverse(). se pak použije k obrácení pořadí prvků v poli. Nakonec se join() použije ke spojení obrácených prvků zpět do řetězce.

Příklad: Níže uvedený příklad kódu prakticky vysvětluje výše uvedený přístup.

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'); 

Výstup
skeeGrofskeeG tpircSavaJ tpircSepyT 

5. Použití Spread Operator a metody reduction().

The operátor šíření lze použít k převodu řetězce na pole znaků a použití snížit() funkce v JavaScriptu k vytvoření reverzního řetězce z pole zřetězením řetězce v dopředném směru.

Příklad: Tento kód implementuje operátor spread a metodu snížení pro obrácení řetězce.

Javascript
// Function to reverse string function reverseString(str) {  const strRev = [...str].reduce((x, y) =>y.concat(x));  console.log(strRev); } // Volání funkce reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); 

Výstup
skeeGrofskeeG tpircSavaJ tpircSepyT 

6. Použití pro smyčku

The pro smyčku se používá k iteraci znaků řetězce v opačném pořadí. Počínaje posledním znakem (délka řetězce – 1) a znakem posunutým do nového obráceného řetězce jeden po druhém.

Příklad: Níže uvedený kód implementuje smyčku for pro obrácení řetězce.

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); } // Volání funkce reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); 

Výstup
skeeGrofskeeG tpircSavaJ tpircSepyT 

7. Použití substring() a Decrementing Index

The podřetězec () metoda se používá k extrahování znaku na indexu i a jeho připojení k obrácenému řetězci. Index i se pak sníží.

Příklad: Níže uvedený kód implementuje metodu substring() pro obrácení řetězce.

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); } // Volání funkce reverseString('techcodeview.com'); reverseString('JavaScript'); reverseString('TypeScript'); 

Výstup
skeeGrofskeeG tpircSavaJ tpircSepyT 

8. Použití rekurze

V rekurzivním přístupu funkce opakovaně volá sama sebe, přičemž bere podřetězec z druhého znaku a spojuje jej s prvním znakem, dokud není dosaženo základního případu, čímž se řetězec obrátí.

Příklad: Tento kód implementuje rekurzi pro obrácení řetězce v JavaScriptu.

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')); 

Výstup
skeeGrofskeeG tpircSavaJ tpircSepyT 

9. Použití zásobníku

V tomto přístupu používáme zásobník datová struktura. Iterujeme každý znak vstupního řetězce a vložíme jej do zásobníku. Poté vyjmeme každý znak ze zásobníku jeden po druhém a zřetězíme je, aby vytvořili obrácený řetězec.

Příklad: Tento kód používá zásobník k obrácení řetězce v JavaScriptu.

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) { obrácené += stack.pop();  } return obrácený; } console.log(reverseString('GeeksForGeeks')); 

Výstup
skeeGroFskeeG