JavaScript の JSON.stringify() メソッドの基本的な役割として、正しいものはどれですか?
1〜4キーで選択、Enterで回答できます
解説
正解は「JavaScript の値を JSON 形式の文字列に変換する」です。JSON.stringify() はオブジェクトや配列などを、JSON(データをやり取りするためのテキスト形式)の文字列に変換します。戻り値はオブジェクトではなく文字列である点がポイントです。基本的な使い方const user = { name: 'Taro', age: 20 }; const json = JSON.stringify(user); console.log(json); // '{"name":"Taro","age":20}' console.log(typeof json); // 'string' → 文字列になっている // 第3引数でインデント幅を指定すると、改行付きで整形される console.log(JSON.stringify(user, null, 2));逆に、JSON 文字列を JavaScript の値に戻すのは JSON.parse() の役割です。その他の選択肢について「JSON 形式の文字列を JavaScript のオブジェクトに」: これは JSON.parse() の説明です。名前が似ているため取り違えやすい組み合わせです。「オブジェクトの中身を見やすく整形して」: 第3引数で整形はできますが、文字列を返すだけでコンソールへの出力は行いません。出力するには console.log() が必要です。「オブジェクトを入れ子の中身まで複製」: 戻り値は文字列なので、それ自体はコピーではありません。また undefined や関数は変換時に省略されるため、複製の手段としても不完全です。fetch でオブジェクトを送るときは文字列化が必要fetch() でサーバーにデータを送る際、body にオブジェクトをそのまま渡すと "[object Object]" という文字列が送られてしまいます。JSON.stringify() で変換し、ヘッダーで JSON であることを伝えます。fetch('/api/users', { method: 'POST', headers: { 'Content-Type': 'application/json' }, // JSON であることを伝える body: JSON.stringify({ name: 'Taro' }), // 文字列に変換して送る });参考JSON.stringify() - JavaScript | MDN