tengo una pregunta para deserializar texto JSON a un objeto JavaScript, i probar jQuery y la biblioteca Yui, tengo esta clase:deserializar JSON al objeto JavaScript
function Identifier(name, contextId) {
this.name = name;
this.contextId = contextId;
}
Identifier.prototype.setName = function(name) {
this.name = name;
}
Identifier.prototype.getName = function() {
return this.name;
}
Identifier.prototype.setContextId = function(contexId) {
this.contextId= contexId;
}
Identifier.prototype.getContextId = function() {
return this.contextId;
}
y tengo esta JSON:
{
"Identifier": {
"name":"uno",
"contextId":"dos"}
}
Quiero el análisis sintáctico crear un objeto identificador, mi problema es que esta frases:
var obj = jQuery.parseJSON('{"Identifier": { "name":"uno","contextId":"dos"}}');
o
var obj2 = JSON.parse('{"Identifier": { "name":"uno","contextId":"dos"}}');
No funciona, el var obj y obj2 no son un objeto Identificador, ¿cómo puedo analizar esto? Gracias
esta pregunta no es el duplicado, porque fue hecho 5 años antes de que la pregunta que marca como Michael duplicado
No se puede crear un objeto 'Identifier' con JSON, puede crear un objeto literal con la misma estructura de datos pero ninguna de las funciones se trabajo. Lo que puede hacer es agregarlos al literal para que funcione como un objeto 'Indentifier' después de obtener el json. –
Agregue un método 'fromJson' a' Identifier' y analice y procese el JSON en consecuencia para crear una nueva instancia 'Identifier'. –
Alternativamente, podría usar un parámetro de función 'reviver' cuando use 'JSON.parse', que se invocaría para cada propiedad de su cadena json en cadena. Desde dentro de esa función 'reviver' puede crear un objeto' Identifier' en el momento apropiado, es decir, cuando se está analizando la última propiedad. Hay algunos ejemplos en [MDN] (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/JSON/parse). –