Tengo un objeto en javascript al que quiero añadir otros objetos recibidos por ajax de los cuales algunos son funciones anonimas javascript
No puedo usar $.extend() (a no ser que no se yo como hacerlo en este caso) porque tengo que emplear eval() para aquellos elementos recibidos que son funciones javascript
Tengo el ejemplo aqui
Código PHP:
Ver original
$respuesta_ajax = [ "Objeto_1" => [ "clave1_1" => "function(){console.log('ok clave1_1')}", "clave2_1" => "<div>Prueba 2_1</div>" ], "Objeto_2" => [ "clave1_2" => "function(){console.log('ok clave1_2')}", "clave2_2" => "<div>Prueba 2_2</div>" ] ];
Código Javascript:
Ver original
var Objeto_global = {}; var recibido_ajax = <?php echo json_encode($respuesta_ajax); ?>; $.each(recibido_ajax,function(clave){ Objeto_global[clave] = {}; $.each(this,function(subclave){ if(this.indexOf('function') > -1){ Objeto_global[clave][subclave] = eval(''+this); //aqui salta el error }else{ Objeto_global[clave][subclave] = ''+this; } }); }); console.log(Objeto_global);
Me salta el siguente error: Uncaught SyntaxError: Unexpected token (
¿ Que hago mal ?
¿Que otros modos de hacer lo mismo seran mas indicados?
Gracias