how to reverse words in javascript code example
Example 1: reverse string javascript
// hey buddy, here are different implementations, choose your favourite !!
// best implementation
const reverse = (str) => str.split("").reverse().join("");
// explanation
function reverse1(str) {
// turn string to array, each char of the string will be part of the
// array as an individual element
const arr = str.split("");
// swap all the indexes of the array
arr.reverse();
// join every element back together
const res = arr.join("");
return res;
}
// without using REVERSE method
// recursive function
function reverse2(str) {
let res = "";
for (let i = 0; i < str.length; i++) res = str[i] + res;
return res;
}
// using REDUCE ( high order array function )
function reverse3(str) {
return str.split("").reduce((output, char) => {
return char + output;
}, "");
}
Example 2: javascript reverse string
function reverseString(str) {
// Step 1. Create an empty string that will host the new created string
var newString = "";
// Step 2. Create the FOR loop
/* The starting point of the loop will be (str.length - 1) which corresponds to the
last character of the string, "o"
As long as i is greater than or equals 0, the loop will go on
We decrement i after each iteration */
for (var i = str.length - 1; i >= 0; i--) {
newString += str[i]; // or newString = newString + str[i];
}
/* Here hello's length equals 5
For each iteration: i = str.length - 1 and newString = newString + str[i]
First iteration: i = 5 - 1 = 4, newString = "" + "o" = "o"
Second iteration: i = 4 - 1 = 3, newString = "o" + "l" = "ol"
Third iteration: i = 3 - 1 = 2, newString = "ol" + "l" = "oll"
Fourth iteration: i = 2 - 1 = 1, newString = "oll" + "e" = "olle"
Fifth iteration: i = 1 - 1 = 0, newString = "olle" + "h" = "olleh"
End of the FOR Loop*/
// Step 3. Return the reversed string
return newString; // "olleh"
}
reverseString('hello');
Example 3: how to reverse a string in javascript without using reverse method
function reverseString(str) {
if (str === "")
return "";
else
return reverseString(str.substr(1)) + str.charAt(0);
}
reverseString("hello");