software

Jak obrátit řetězec v JavaScriptu [Podrobný postup]

Jak obrátit řetězec v JavaScriptu [Podrobný postup]

Palindrom je slovo nebo seznam znaků, které se při obrácení čtou stejně. Dobrým příkladem toho je slovo „RADAR“.

Nejjednodušší způsob, jak zkontrolovat palindrom v JavaScriptu, je vytvořit kopii původního řetězce, obrátit ji a poté porovnat. Chcete-li vytvořit algoritmus, který to bude dělat efektivně, musíte se naučit, jak obrátit řetězec v JavaScriptu. V této příručce se naučíte jak.

Jak převrátím řetězec pomocí JavaScriptu?

1. Převeďte jej na pole a převraťte jej

  1. Rozdělte řetězec na řadu podřetězců pomocí rozdělit() metoda ze třídy objektu String. Metoda split vyžaduje jako argument řetězec. V tomto případě použijete prázdný řetězec. Metoda by tedy měla vypadat takto:
    rozdělit("")
  2. Obraťte pořadí pole pomocí zvrátit() metoda.
  3. Převeďte pole zpět na řetězec pomocí připojit se() metoda. Podobně jako metoda split vyžaduje metoda join řetězec jako argument. Opět použijete prázdný řetězec:
    připojit se("")

Nejlepší způsob, jak implementovat výše uvedené kroky, je prostřednictvím funkce. Zde je příklad rychlého zdrojového kódu, který můžete kopírovat, testovat a upravovat:




The Great Reverso!


Aktuální řetězec: „Obrátit tento řetězec!“


Zvrátit


funkce myFunction ()
var str = "Obrátit tento řetězec!";
var res = str.split (""); // Rozdělte řetězec na pole znaků
res.reverse (); // Obrátí pořadí polí znaků
str = res.join ("");
document.getElementById ("demo"). innerHTML = str; // Připojte řetězec k ukázce HTML



Ve výše uvedeném příkladu vytvoříme funkci, která obrátí napevno naprogramovaný řetězec a poté na něj nastaví prvek dokumentu. Funkce je poté volána z tlačítka označeného „Zpět“.

Existuje mnoho způsobů, jak můžete tento kód zkrátit a upravit. Například místo přiřazení připojeného řetězce k str proměnnou, můžete ji znovu přiřadit k res proměnná a poté na ni nasměrujte ukázkový prvek dokumentu HTML, tj.

res = res.join ("");
document.getElementById ("demo"). innerHTML = res;

Alternativně můžete všechny tři kroky zkondenzovat do jednoho řádku:

var res = str.split (""). reverse (). join ("");

Ať tak či onak, výsledky by měly být stejné:


Chcete se naučit JavaScript ještě rychleji? Přečtěte si tento článek, proč byste si měli stáhnout JavaScriptový kód!


2. Obraťte řetězec v JavaScriptu pomocí smyčky for

  1. Vytvořte novou proměnnou prázdného řetězce, která bude obsahovat obrácený řetězec.
    var reverseString = "";
  2. Vytvořte smyčku for s následujícími charakteristikami:
    • Inicializátor: inicializuje čítač, jehož hodnota je délka řetězce, který má být obrácen, odečtený o 1.
    • Podmínka: ujistěte se, že počitadlo je větší nebo rovno 0.
    • Iterace: počítadlo by se mělo snižovat s každou úspěšnou smyčkou.
    • Tělo smyčky for by mělo přidat znak z původního řetězce k tomu, co se stane obráceným řetězcem, zatímco pomocí čítače smyčky for nastavíte pozici znaku.
      for (var i = fwdStri.length - 1; i> = 0; i--) reverseString = newString + fwdStr [i]; 

Opět byste měli použít výše uvedenou operaci ve funkci ve skriptovacích značkách. Zda chcete zahrnout JavaScript jako externí soubor nebo vložený kód, je jen na vás. Takto vypadá výše uvedené řešení v akci:

   

The Great Reverso!

Aktuální řetězec: „Obrátit tento řetězec!“

Zpětná funkce myFunction () var fwdString = "Obrátit tento řetězec!"; var reverseString = ""; for (var i = fwdString.length - 1; i> = 0; i--) reverseString + = fwdString [i]; // Alternativa k newString + fwdString [i] document.getElementById ("demo"). InnerHTML = reverseString;

Výše uvedený kód funguje opakováním původního řetězce v opačném pořadí a klonuje jej znak po znaku. Pokud nemáte zájem explicitně vložit svůj řetězec do pole, pak vám může toto řešení lépe vyhovovat vašim cílům.


3. Obraťte řetězec v JavaScriptu pomocí rekurze

  1. Vytvořte novou funkci s řetězcem jako parametrem, např.
    funkce reverseString (str) 
  2. V těle funkce vytvořte -li příkaz, který kontroluje, zda je řetězec předaný funkci prázdný. Pokud je to pravda, měla by vrátit prázdný řetězec, např.
    if (str === "") return "";
  3. Přidejte prohlášení else.
  4. V těle příkazu else vraťte rekurzivní volání aktuální metodě s podřetězcem parametru řetězce metody, počínaje druhým znakem, tj. str.substr (1). Připojte první písmeno nového podřetězce, např.
    else return reverseString (str.substr (1)) + str.charAt (0);

Tuto metodu byste měli zavolat z jiné funkce, která je zodpovědná za zobrazení výsledků. Celý kód by měl vypadat asi takto:

   

The Great Reverso!

Aktuální řetězec: „Obrátit tento řetězec!“

Zpětná funkce myFunction () var str = this.reverseString ("Obrátit tento řetězec!"); document.getElementById ("demo"). innerHTML = str; funkce reverseString (str) if (str === "") return ""; else return reverseString (str.substr (1)) + str.charAt (0);

Rekurze funguje podobně jako smyčka for, ale vy napálíte logiku JavaScriptu, aby fungovala za vás. Namísto připojování znaků na konec řetězce jej s každou smyčkou připojuje dopředu. Výsledky jsou však téměř stejné.

Výše uvedené příklady lze otestovat pomocí programu Windows Poznámkový blok a webového prohlížeče. Abychom vám ušetřili čas, doporučujeme použít editor kódu pro více platforem nebo integrované vývojové prostředí.

Jak obrátit řetězec v JavaScriptu je běžná otázka při rozhovoru. Proto může být pochopení nezbytně nutné pro váš úspěch jako vývojáře softwaru.

V níže uvedených komentářích nám však dejte vědět, která metoda vám nejlépe vyhovovala. Jako vždy děkuji za přečtení.

FAQ: Další informace o JavaScriptu

Chcete-li opravit JavaScript void 0 v prohlížeči Chrome, podívejte se na našeho podrobného průvodce chybami Fix javascript: void (0).

Chcete-li opravit chybu JavaScriptu v hlavním procesu, postupujte podle metod uvedených v naší užitečné příručce Fix JavaScript v hlavním průvodci procesem.

Metoda spojování v JavaScriptu přidává nebo odebírá položky z pole.

Jak automatizovat úkoly v systému Windows 10
Pravděpodobně existuje aplikace nebo web, který každý den používáte / navštěvujete na svém počítači. Pokud jste již takovou rutinu vyvinuli, můžete do...
Jak blokovat aplikace UWP ve Windows 10
Pokud jste rodič a sdílíte počítač se svými dětmi nebo týmový manažer, který chce, aby se jeho kolegové soustředili na jejich práci, určitě existují n...
Po instalaci aktualizací ve Windows 10 zakažte automatické restartování
Windows 10 je o aktualizacích. Když společnost Microsoft představila myšlenku „Windows 10 jako službu“, vyšlo najevo, že uživatelé nebudou moci správn...