Stringオブジェクト

広告

String オブジェクトは文字列のラッパークラスです。 String オブジェクトのインスタンスだけでなく、数値からも String オブジェクトのメソッドを呼び出したりプロパティを参照することができます。ここでは JavaScript の String オブジェクトについて解説します。

Stringオブジェクトのコンストラクタ

String オブジェクトは文字列のラッパーオブジェクトです。文字列に対して String オブジェクトのメソッドを呼び出すと、文字列が自動的に String オブジェクトに変換されてメソッドが呼び出されます。(ラッパーオブジェクトとはなにかについては「ラッパーオブジェクトとプリミティブ型」を参照されてください)。

通常 String オブジェクトを直接作成する必要はあまりありませんが、オブジェクトを作成するには String オブジェクトのコンストラクタを使用します。書式は次のとおりです。

new String(value)

引数には String オブジェクトの値を指定します。文字列以外を指定した場合は、いったん文字列に変換されたあとで値として設定されます。値は String オブジェクトがラップするプリミティブ値として設定されます。

次のサンプルをみてください。

let obj1 = new String('Hello');
console.log(obj1);
--> String {"Hello"}

let obj2 = new String(365);
console.log(obj2);
--> String {"365"}

let obj3 = new String(0xF3);
console.log(obj3);
--> String {"243"}

Stringオブジェクトのコンストラクタ(1)

文字列以外の値を引数に指定した場合、どのように文字列に変換されるのかはご注意ください。例えば数値が10進数以外で記述されていた場合は10進数での表記に変えたものが文字列となります。

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

String オブジェクトが持つプリミティブ値を取得するには、 String オブジェクトで用意されているインスタンスメソッドの valueof メソッドを使用します。書式は次の通りです。

strObj.valueOf()

指定した String オブジェクトが持つプリミティブ値を返します。

次のサンプルをみてください。

let obj = new String('北海道');
console.log(obj.valueOf());
--> 北海道

Stringオブジェクトのプリミティブ値を取得する(1)

String オブジェクトが持つプリミティブ値を取得することができました。

また String オブジェクトで用意されているインスタンスメソッドの toString メソッドを使うと指定されたオブジェクトを表す文字列を取得することができます。書式は次の通りです。

strObj.toString()

指定した String オブジェクトを表す文字列を取得します。

次のサンプルをみてください。

let obj = new String('北海道');
console.log(obj.toString());
--> 北海道

Stringオブジェクトのプリミティブ値を取得する(1)

valueOf メソッドと同じ値を取得することができました。

-- --

JavaScript の String オブジェクトについて解説しました。

( Written by Tatsuo Ikura )

関連記事 (一部広告含む)
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。