JSON.parseとJSON.stringifyを使用してJS配列のクローンを作成した後、配列の「未定義」の値が「null」に変換されるのはなぜですか?[複製]
Aug 17 2020
var arr1 = [1, 2, 3, undefined, 4, 5];
var arr2 = JSON.parse(JSON.stringify(arr1));
console.log(arr2);
上記のコードの出力は...になります。
[1, 2, 3, null, 4, 5]
4番目の値を「undefined」から「null」に変換するのはなぜですか?
回答
2 Iwrestledabearonce. Aug 17 2020 at 20:24
なぜならundefined
Javascriptのタイプです。undefined
JSONにはありません。
仕様によると:
JSONは、4つのプリミティブ型(文字列、数値、ブール値、およびnull)と2つの構造化型(オブジェクトと配列)を表すことができます。