2016-06-15 19 views
0

annehmen Objekte 2 json Objekt wie diese haben:Vergleichen Sie zwei json

var obj1= { 
"errors":{ 
    "addcreditcard":"Non è stato possibile associare questa carta, ti preghiamo di ricontrollare i dati e riprovare.", 
    "creditrecharge":"Si è verificato un errore durante la ricarica.", 
    "ticketvalidation":"Siamo spiacenti, si è verificato un problema durante la validazione.", 
    "ticketpurchase": "Siamo spiacenti, si è verificato un problema durante l\"acquisto.", 
    "qrwrong": "Hai scansionato un QR Code non valido. Scansiona un QR Code OpenMove." 
} 
} 

Und:

var obj2 = { 
'errors':{ 
    'addcreditcard':'Wir konnten diese Karte nicht verifizieren. Bitte   \u00fcberpr\u00fcfe deine Angaben und versuche es noch einmal.', 
    'creditrecharge':'Beim Aufladen deines Guthabens ist ein Fehler aufgetreten.', 
    'qrwrong': 'Sie haben einen ung\u00fcltigen QR Code gescannt. Bitte einen OpenMove QR Code scannen.' 
} 
} 

Wie kann ich ein anderes Objekt erhalten mit den Werten in der (Javascript oder Jquery verwenden) erste json aber nicht in der zweiten? In diesem Fall wird es sein:

var example = { 
    "errors":{ 
     "ticketvalidation":"Siamo spiacenti, si è verificato un problema durante la validazione.", 
    "ticketpurchase": "Siamo spiacenti, si è verificato un problema durante l\"acquisto." 
} 
} 

Antwort

0

Sie diesen Code verwenden können, die alle Eigenschaften in dem zweiten Objekt iteriert und prüft, ob sie in der ersten existieren:

var obj1= { 
"errors":{ 
    "addcreditcard":"Non è stato possibile associare questa carta, ti preghiamo di ricontrollare i dati e riprovare.", 
    "creditrecharge":"Si è verificato un errore durante la ricarica.", 
    "ticketvalidation":"Siamo spiacenti, si è verificato un problema durante la validazione.", 
    "ticketpurchase": "Siamo spiacenti, si è verificato un problema durante l\"acquisto.", 
    "qrwrong": "Hai scansionato un QR Code non valido. Scansiona un QR Code OpenMove." 
} 
}; 

var obj2 = { 
'errors':{ 
    'addcreditcard':'Wir konnten diese Karte nicht verifizieren. Bitte   \u00fcberpr\u00fcfe deine Angaben und versuche es noch einmal.', 
    'creditrecharge':'Beim Aufladen deines Guthabens ist ein Fehler aufgetreten.', 
    'qrwrong': 'Sie haben einen ung\u00fcltigen QR Code gescannt. Bitte einen OpenMove QR Code scannen.' 
} 
}; 

var finalObject = {}; 
for (var property in obj1.errors) { 

    if (obj1.errors.hasOwnProperty(property)) { 

     if(!obj2.errors.hasOwnProperty(property)){ 

      // exist only in first 
      finalObject[property] = obj1.errors[property]; 
     } 
    } 
} 

console.log(finalObject) 
+0

Dank, jetzt ich Ich habe Probleme beim Konvertieren von Text in einen AJAX-Aufruf an das JSON-Objekt. Jedenfalls finde ich es fair :) – Mister98

+0

Witz, funktioniert nicht. Gibt eine undefinierte Variable zurück – Mister98

+0

Ich repariere es Sie haben [hier] (http://jsbin.com/rofuziqotu/edit?js,console) eine funktionierende Geige. – Ygalbel