Después de clonar la matriz JS usando JSON.parse y JSON.stringify, ¿por qué el valor "indefinido" de la matriz se convierte en "nulo"? [duplicar]
Aug 17 2020
var arr1 = [1, 2, 3, undefined, 4, 5];
var arr2 = JSON.parse(JSON.stringify(arr1));
console.log(arr2);
La salida del código anterior será....
[1, 2, 3, null, 4, 5]
¿Por qué convierte su cuarto valor de "indefinido" a "nulo"?
Respuestas
2 Iwrestledabearonce. Aug 17 2020 at 20:24
Porque undefined
es un tipo de Javascript. No hay undefined
en JSON.
Según la especificación :
JSON puede representar cuatro tipos primitivos (cadenas, números, booleanos y nulos) y dos tipos estructurados (objetos y matrices).