2016-06-16 6 views
0

In Bezug auf Java-Skript unten möchte ich Mitarbeiter Variable in einer Java-Klasse lesen. Könnten Sie mir bitte dabei helfen?Lesen Sie die Javascript-Daten

var employees = { 
    accounting: [] 
}; 

for(var i in someData) { 
    var item = someData[i]; 

    employees.accounting.push({ 
     "firstName" : item.firstName, 
     "lastName" : item.lastName, 
     "age"  : item.age 
    }); 
} 
+0

http://json.org –

Antwort

0

wenn Sie java6 oder Java7 verwenden Sie JavaScript-Variable in Java wie unten bekommen können:

(Native wurde in java8 entfernt, aber es ist eine ähnliche Klasse [jdk.nashorn.api.scripting .ScriptObjectMirror] können Sie verwenden)

public class Test5 { 
    private static final String TEST_SCRIPT = 
      "var employees = {" 
      + " accounting: []" 
      + "};" 
      + "for(i=1; i<=3; i++) {" 
      + " employees.accounting.push({ " 
      + " \"firstName\" : \"firstName\" + i," 
      + " \"lastName\" : \"lastName\" + i," 
      + " \"age\"  : \"age\" + i" 
      + "});" 
      + "}" 
      + "employees;"; 
    /** 
    * @param args 
    */ 
    public static void main(String[] args) { 
     try{ 
      CompiledScript script = compEngine.compile(TEST_SCRIPT); 
      NativeObject obj = (NativeObject) script.eval(); 
      NativeArray obj1 = (NativeArray) obj.get(obj.getAllIds()[0]); 
      for (Object temp : obj1) { 
       NativeObject obj2 = (NativeObject) temp; 
       System.out.println(obj2.get("firstName")); 
       System.out.println(obj2.get("lastName")); 
       System.out.println(obj2.get("age")); 
      } 
     }catch(Exception e){e.printStackTrace();} 
    } 
} 
Verwandte Themen