javascript - significado - referencia circular en excel 2013
Pasar un objeto con referencias circulares desde el servidor al Javascript del lado del cliente sin perder la circularidad (1)
Estoy intentando pasar un objeto con referencias circulares del servidor node.js al javascript del lado del cliente.
Servidor (node.js):
var object = { circular: object }
//....
app.get(''/'', function(req, res){
res.render(''index.jade'', {object: object});
});
Jade / Javascript del lado del cliente
script var object = !{JSON.stringify(object)};
Aquí aparece el error de que el object
contiene referencias circulares.
¿Hay alguna forma de obtener el object
en javascript del lado del cliente, con o sin referencias circulares?
Douglas Crockford tiene una solución para esto que he utilizado con éxito para resolver este problema antes: Cycle.js
en lugar de simplemente usar stringify
y parse
, primero decycle
llamar a decycle
y restaurar con retrocycle
var jsonString = JSON.stringify(JSON.decycle(parent));
var restoredObject = JSON.retrocycle(JSON.parse(jsonString));