JavaScriptにおける文字列型の扱い方


ccc

東京都内でサラリーマンをしているAI・育児ブロガー、CCCです。 AI(人工知能)と子育てに関する記事を執筆しています。 WebシステムをベースとしたAIを活用することで生活をより便利にする方法を紹介し、育児について衣食住における役立つグッズや情報を配信しています。


JavaScriptにおける文字列型の扱い方を教えてください。


ccc

JavaScript はクライアント側で実行されるオブジェクト指向型のスクリプト言語です。主にブラウザ上で実行され、ユーザのアクションに応じて動的にWebページの内容を書き換えたり、フォームに入力された内容をチェックしたりといったことがクライアント側で実現できます。また、Ajaxという仕組みを利用することで、Webサーバーとブラウザとの間で非同期通信を行えるので、ページを切り替えることなくページの内容を書き換えることができます。Web系AIとJavaScriptの親和性はピカイチで、AIをWebブラウザから使うためのライブラリが公開されています。


ccc

今回はJavaScriptの使い方として、JavaScriptにおける文字列型の扱い方をサンプルを用いて解説します。

文字列の記述方法

プログラムで文字列を記述するとき、シングルクォーテーション(‘)またはダブルクォーテーション(“)で囲います。

let temp="test";
let temp='test';

ダブルクォーテーションまたはシングルクォーテーションを文字列として記述するときはバックスラッシュ(¥)をつけます。

let temp="test\"test";
let temp='test\'test';

文字列の途中で改行

文字列の途中で改行するときは改行のエスケープシーケンス(\n)を記述します。

let temp="test\ntest";

Stringオブジェクトのプリミティブ値を取得

valueOf()とtoString()はStringオブジェクトのプリミティブ値を取得するメソッドです。

let temp="test";
console.log(temp.valueOf());
//test

console.log(temp.toString());
//test

文字列の文字数を取得

lengthプロパティから文字列の文字数を取得できます。

let temp="test";
console.log(temp.length);
//4

文字列を分割

split()メソッドは文字列を指定した区切り文字で分割するメソッドです。引数に区切り文字を指定します。

let temp='2020/11/01';
let temp2=temp.split('/');
console.log(temp2);
//(3) ["2020", "11", "01"]

文字列を置き換える

replace()は文字列を置き換えるメソッドです。第1引数で指定した文字列を第2引数で指定した文字列に置き換えます。指定した文字列が複数含まれていても、置換されるのは最初の文字列だけです。

let temp='abcdefgabc';
let temp2= temp.replace('abc', 'ABC');
console.log(temp2);
//ABCdefg

部分文字列を取得

substr()は部分文字列を取得するメソッドです。第1引数に開始インデックス、第2引数に文字数を指定します。第1引数のマイナス表記も可能です。

let temp='東京都千代田区';
let temp2=temp.substr(0, 3);
console.log(temp2);
//東京都

temp2=temp.substr(3, 4);
console.log(temp2);
//千代田区

temp2=temp.substr(-7, 3);
console.log(temp2);
//東京都

temp2=temp.substr(-4, 4);
console.log(temp2);
//千代田区

大文字または小文字に置き換える

toLowerCase()は大文字を小文字に置き換えるメソッドです。
toUpperCase()は小文字を大文字に置き換えるメソッドです。

let temp='TEST';
console.log(temp.toLowerCase());
//test

let temp2='test';
console.log(temp2.toUpperCase());
//TEST

指定の文字列を検索

indexOf()は指定した文字列を検索し、見つかったときは最初の位置を返します。第1引数に文字列を指定します。オプションで第2引数に検索を開始するインデックスを指定することができます。

let temp='abcdefgabcdefg';
console.log(temp.indexOf('efg'));
//4

console.log(temp.indexOf('efg', 5));
//11

console.log(temp.indexOf('test'));
//-1

includes()指定した文字列が含まれるかどうかを検索し、trueまたはfalseを返すメソッドです。オプションで第2引数に検索を開始するインデックスを指定することができます。

let temp='abcdefghijklmn';
console.log(temp.includes('efg'));
//true

console.log(temp.includes('EFG'));
//false

console.log(temp.includes('efg', 5));
//false

先頭と末尾の空白を取り除く

文字列の先頭と末尾の空白を取り除くメソッドです。

let temp='   test   ';
console.log(temp.trim());
//test

先頭に文字列を追加して指定した長さにする

padStart()は先頭に文字列を追加して指定した長さにするメソッドです。第1引数に文字列の長さを指定し、第2引数に追加する文字列を指定します。

let temp='123';
console.log(temp.padStart(5, "0"));
--> '   List'