JavaScript - オブジェクトを文字列に変換する2つの方法

JavaScriptでオブジェクトを文字列に変換する方法を紹介します。 console.log(obj) でオブジェクトを出力するとオブジェクトの内容がすべて出力されますが、 toString() で出力すると [object Object] とだけ出力され、内容は出力されません。オブジェクトの内容を文字列として出力する方法を紹介します。

1. console.log(), %o を使用してオブジェクトを文字列に変換する

console.log()にオブジェクトだけを出力すると、オブジェクトの内容がすべて画面に出力されます。ただし、文字列とオブジェクトを一緒に出力すると、オブジェクトの内容は文字列として出力されません。 以下の例のように %oを使用すると、オブジェクトの内容が文字列に変換されて出力されます。

const obj = {
  name: "John Doe",
  age: 30
}

console.log(obj);
console.log("obj: " + obj);
console.log("obj: %o", obj);

Output:

{ name: 'John Doe', age: 30 }
obj: [object Object]
obj: { name: 'John Doe', age: 30 }

2. JSON.stringify() を使用してオブジェクトを文字列に変換する

JSON.stringify()はオブジェクトをJSON形式の文字列に変換します。これを利用してオブジェクトの内容を文字列に変換できます。

const obj = {
  name: "John Doe",
  age: 30
}

console.log("obj: " + JSON.stringify(obj));

Output:

obj: {"name":"John Doe","age":30}

ちなみに、JSON.parse()を使ってJSON文字列をオブジェクトに変換することもできます。

const obj = JSON.parse('{"name":"John Doe","age":30}');
console.log(obj);
console.log(obj.name);
console.log(obj.age);

Output:

{ name: 'John Doe', age: 30 }
John Doe
30

Related Posts

codechachaCopyright ©2019 codechacha