JavaScirptのラッパーオブジェクト(Wrapper Object)とは

2021年2月7日JavaScript

ラッパーオブジェクト(Wrapper Object)について、簡単にまとめました。

ラッパーオブジェクトとは

ラッパーオブジェクト(Wrapper Object)とは、プリミティ値を内包するオブジェクトのことです。
データ型に関しては、こちらの記事を参考にしてみてください。


各プリミティブ型の値には、それぞれラッパーオブジェクトが存在し、ラッパーオブジェクトを利用することでそのプリミティブ値からいろいろな操作をすることができます。

const b = new String('hello');
console.log(b); //String {"hello"}

bは文字列として定義されたStringというラッパーオブジェクトになります。
Stringというラッパーオブジェクトはオブジェクトのため、プロトタイプを持っていて、その中にいろいろなメソッドを確認することができます。そして、下のように、たとえばその中の一つのslice()を使うことができます。

console.log(b.slice(2)); //llo

文字列の場合、普通次のように記述します。

const aa = 'hello';
 //通常の書き方

このような書き方でも、暗黙的にラッパーオブジェクトを呼ぶことができます。

const aa = 'hello'.slice(2);
console.log(aa);// llo

のようにslice()を使うことができます。

const num1 = 30; //通常の書き方
const num2 = new Number(30); 

数字ならNumber()がラッパーオブジェクトとして暗黙的に呼び出されます。