[英]Rhino - Passing a javascript object to java
我對Rhino還是很陌生,我的問題是如何實現以下目標,
假設我有一個JavaScript對象,該對象遵循以下內容,可以在Java中使用。
var myObject = new Object();
myObject.string1 = "Hello";
myObject.string2 = "World";
myObject.int1 = 1;
但是如果它是動態的,我如何在java中使用它。 例如,如果您決定在javascript中向該對象動態添加更多成員。 這可行嗎? 我的猜測是在Java中定義的類是否必須考慮所有可能的成員才能做到這一點?
希望我已經解釋了我正在努力實現的目標。
在Java中訪問JavaScript對象時,它們基本上都是同一類: ScriptableObject
,它實現Scriptable
接口(GitHub源) 。 還有其他一些用於函數和其他專用對象的類。
Scriptable
接口包括get
, has
和put
類的方法,這些方法大致對應於JavaScript中的myObject.string1
, myObject.hasOwnProperty("string1")
和myObject.string1 = "Hello"
。 ScriptableObject
類添加了一些其他有用的方法來定義屬性等。
考慮使用GSON之類的庫將javascript對象轉換為JAVA。
https://code.google.com/p/google-gson/
您可以使用JSON.stringify將JavaScript對象轉換為JSON
然后使用GSON或其他此類庫生成Java對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.