JavaScriptで文字列を1文字ずつ分割して配列に入れる方法を現役エンジニアが解説【初心者向け】
初心者向けにJavaScriptで文字列を1文字ずつ分割して配列に入れる方法について解説しています。ここではsplitメソッドを使う方法とスプレッド構文を使う方法を説明します。それぞれの書き方を覚えましょう。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
JavaScriptで文字列を1文字ずつ分割して配列に入れる方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。
そもそもJavaScriptについてよく分からないという方は、JavaScriptとは何なのかについて解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプJavaScript/jQuery講座の内容をもとにしています。
今回は、JavaScriptに関する内容だね!
どういう内容でしょうか?
文字列を1文字ずつ分割して配列に入れる方法について詳しく説明していくね!
お願いします!
配列とは
複数の値を格納できるオブジェクトです。例えば下記のように記述すれば、山田、鈴木、佐藤と3つの名前が配列オブジェクトとしてnameという変数に格納されます。
let name = ['山田', '鈴木', '佐藤']
ちなみに値を取り出す際は、変数名の後に[](ブラケット)で0から始まる要素の番号を指定します。
name[0]
上記の場合、山田が取得できます。
文字列を1文字ずつ分割して配列に入れる方法
文字列を1文字ずつに分割して配列にする簡単な方法は主に2つあります。splitメソッドを使う方法とスプレッド構文(…)を使う方法です。
splitメソッドを使って配列化する方法
JavaScriptの文字列オブジェクトであるStringはsplitというメソッドを持っています。このsplitメソッドの第1引数に分割する文字を指定するのですが、1文字ずつに区切る場合は”空文字を指定してください。
スプレッド構文を使って配列化する方法
スプレット構文は…(ドット3つ)から始まる構文です。…の後のものを1つずつ割り当てるので、配列の[](ブラケット)での初期化の際に、スプレット構文と文字列を渡すことで1文字ずつ配列に格納されます。
splitメソッドとスプレッド構文の違いとそれぞれのメリット・使われるケース
実際に書いてみよう
下記の「テックアカデミージュニア」という12文字の文字列を、2つの方法で1文字ずつの配列にする例を紹介します。
const PROGRAM_SCHOOL = 'テックアカデミージュニア';
記述の違いなので、どちらでもお好みの方を使ってみてください。
let arraySplit = PROGRAM_SCHOOL.split(''); //(12) ["テ", "ッ", "ク", "ア", "カ", "デ", "ミ", "ー", "ジ", "ュ", "ニ", "ア"]
これでarraySplitには12個の要素をもつ配列になりました。
let arraySplitSyntax = [...PROGRAM_SCHOOL]; //(12) ["テ", "ッ", "ク", "ア", "カ", "デ", "ミ", "ー", "ジ", "ュ", "ニ", "ア"]
これでarraySplitSyntaxには12個の要素をもつ配列になりました。
まとめ
もちろんループ処理で1文字ずつ格納していくこともできますが、この2つの記述のどちらかを知っているだけでとても楽ができます。
ぜひおためしください。
監修してくれたメンター
横山茂雄(よこやましげお)
フリーエンジニアとして活動中。サーバーサイドからフロントまで時代の波に合わせてスキルを変化させてきました。 言語、フレームワーク、DB、現場、いずれも転々としながら、筋トレも欠かさない体育会系エンジニアです。TechAcademyジュニアのゲームアプリコースを担当しています。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でもJavaScript・jQueryを使ったWebサービス公開を習得できるオンラインブートキャンプを開催しています。
また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。