JavaScript 文字列を逆方向に変換する方法

JavaScript 文字列を逆方向に変換する方法

codewarsの問題にチャレンジ中です。JavaScriptで、文字列を逆方向に変換する方法を、調べたので、メモとして残しておきます。

複数の単語を含む文字列を逆方向にする

文字列をリバース

ひとつの単語だけ、リバースして反対方向に変える方法は、下記のようになります。

const str = 'Team';
const reverse = str.split('').reverse().join(''); 
console.log(reverse); //'maeT';

split()メソッド

split()メソッドは、文字列(String) を指定した区切り文字列で分割することにより、文字列の配列を作ります。

const str = 'Team';
console.log(str.split('')); //文字列を分割して、配列を作る
//['T','e','a','m'];

reverse()メソッド

reverse()メソッドは、配列の要素を反転させるメソッドです。

console.log(str.split('').reverse(); //配列を反対方向にする
//['m', 'a', 'e', 'T'];

join()メソッド

joinで文字列を連結します。引数に文字列を入れると、引数を除いた文字列が返ります。

console.log(str.split('').reverse()join(''); //配列を反対方向にして''を削除して結合
//['maeT'];

複数の単語の文字列を反転させる

次は、複数の単語を含んだ文字列の空白を維持したまま、文字列を反転させます。

Examples
"This is an example!" ==> "sihT si na !elpmaxe"
"double  spaces"      ==> "elbuod  secaps

Best Practice

mapを使うと、スマートに書くことができます。

function reverseWords(str) {
  return str.split(' ').map(function(word){
    return word.split('').reverse().join('');
  }).join(' ');
}

終わりに

今回は、文字列の操作するメソッドについて、ご紹介しました。Codewarsは、自分の引き出しを増やすのに最適です!

CodeWarsのバッジが、かわいいです。

CodeWarsに興味がある方は、こちらからチャレンジしてみてください。※最初に簡単なテストがあります。

https://www.codewars.com/

まい

フロントエンドエンジニア目指して、勉強中です。

JavaScriptカテゴリの最新記事