2016-11-02 1 views
2

Ich habe ein Problem, indem Sie diese JSON-Eigenschaften überprüfen. Ich möchte testen, ob der Formularname ist „TestForm_WF1“, aber ich weiß nicht, wie um den Test zu schreiben, um die Eigenschaften dieser seltsamen benannten Array zu überprüfen:Google Postbote: So erhalten Sie Eigenschaften eines Array

{ 
    "#!#": [ 
    { 
     "_type": "wfdocument", 
     "formName": "TestForm_WF1", 

normalerweise bekam ich einige Output wie

[ 
    { 
    "_type": "application", 
    ... 

, die ich mit der folgenden forEach-Funktion testen konnte:

var response = JSON.parse(responseBody); 
response.forEach(function(entry) { 
    test["foo"] = entry._type === "application"; 
    ... 
}); 

umgekehrt war, dass Eigenschaften thier eigene Eigenschaften haben und wie getestet werden konnten:

Ausgang:

{ 
    "license": { 
    "_type": "license", 
    ... 

Testfall:

var jsonData = JSON.parse(responseBody); 
tests["bar"] = jsonData.license._type === "license"; 
+0

Ihre zuletzt ist ein anderes Thema , also müssen Sie eine andere Frage stellen. –

+0

In Bezug auf Ihr zweites Problem gibt es zwei Ergebnisse, weil Sie zwei eindeutige Schlüssel einfügen. Um die Schlüssel zu unterscheiden, füge den Index hinzu: 'response [" #! # "]. ForEach (function (entry, i) => {test [i +" _foo "] = ...})'. –

+0

Danke nochmal! Ich bin neu, aber ich werde das für das nächste Mal im Hinterkopf behalten. –

Antwort

1

eine Klammer-Notation für Zeichen, die nicht mit einer Punktnotation verwendet werden können:

var response = JSON.parse(responseBody); 
response["#!#"].forEach(function(entry) { 
    test["foo"] = entry._type === "application"; 
    ... 
}); 
+0

funktioniert. Danke! –

Verwandte Themen