JavaScriptでforループを使って文字列を反転させる方法
JavaScriptでは、文字列を引数として受け取り、その文字列を逆順に並べた新しい文字列を生成する関数を作成できます。本記事では、forループを使用して文字列を反転させるシンプルな方法を解説します。
実装のポイント
文字列を反転させる基本的な考え方は以下の通りです。
- 文字列の末尾(最後のインデックス)から先頭に向かって、インデックスを1つずつ減らしながらループ処理を行う
- 各インデックスに対応する文字を取り出し、結果用の変数に順番に連結していく
コード例
実際のコードは次のようになります。
const str = 'this is the original string';
const reverseString = (str = '') => {
let reverse = '';
const { length: len } = str;
// 文字列の末尾から先頭に向かってループ
for (let i = len - 1; i >= 0; i--) {
reverse += str[i];
}
return reverse;
};
console.log(reverseString(str));コードの解説
const { length: len } = str;— 分割代入を使って文字列の長さを取得しています。これにより、ループの開始位置(末尾のインデックス)を求められます。for (let i = len - 1; i >= 0; i--)— インデックスを末尾から0まで逆順に走査します。reverse += str[i]— 各文字を後ろから順番に連結することで、反転した文字列が完成します。
出力結果
コンソールには以下のように出力されます。
gnirts lanigiro eht si siht
元の文字列「this is the original string」が完全に反転していることが確認できます。この手法は追加のライブラリ不要で動作し、配列のreverse()メソッドやsplit('')・join('')を組み合わせる方法と比べて、ループの仕組みを理解するのに適したアプローチです。
-
【初心者向け】JavaScriptのfor...ofループの使い方を実例つきで解説
JavaScriptのfor...ofループは、配列、文字列、配列風オブジェクト(Array-like objects)、NodeListなど、反復可能(イテラブル)なオブジェクトの要素を先頭から順番に1つずつ取り出して処理するための構文です。 インデックスの管理が不要なため、従来のforループやforEachメソッドと比べてコードが簡潔になり、可読性や保守性が向上するというメリットがあります。 for...ofループの基本構文 for (変数 of 反復可能オブジェクト) { // 各要素に対して実行したい処理 } サンプルコード 次の例では、for...ofループを使って文
-
JavaScriptのforループを使って空のオブジェクトにプロパティを設定する方法
JavaScriptでは、for...inループを使うことで、既存のオブジェクトから空のオブジェクトへプロパティを簡単にコピーできます。以下に、forループを使用して空のオブジェクトにプロパティを設定するサンプルコードを紹介します。 コード例 <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width,