j2js - グローバル
j2js スクリプトインクルードを使用すると、Java オブジェクトを JavaScript オブジェクトに変換できます。
指定された値が同等の JavaScript オブジェクトに変換可能な Java オブジェクトである場合、その変換が実行されて結果が返されます。そうでない場合は元の Java オブジェクトが返されます。
j2js クラスはサーバー側のスクリプトで使用できます。
チェックされた順序で実行される特定の変換。
- Java 文字列→ JavaScript 文字列
- Java ブーリアン→ JavaScript ブーリアン
- Java の整数→ JavaScript の数字
- Java の Long 型→ JavaScript の数字
- Java の Double 型→ JavaScript の数字
- Java の Byte 型→ JavaScript の数字
- Java の Float 型→ JavaScript の数字
- Java の Short 型→ JavaScript の数字
- Java の Character 型→ JavaScript の数字
- Java 配列:順序が保持された > JavaScript 配列
- Java の List 型→順序が保持された JavaScript 配列
- Java の Map 型→キーと値のペアをプロパティと値のペアに変換した JavaScript オブジェクト
- Java の Set 型→任意の順序の JavaScript 配列
変換は、配列、リスト、またはコレクションの要素に対して再帰的に実行されます。たとえば、文字列の ArrayList の Java ArrayList を指定すると、文字列の配列の JavaScript 配列が返されます。
j2js - j2js(オブジェクト javaObject)
Java オブジェクトをシステムコードから JavaScript オブジェクトに変換します。
| 名前 | タイプ | 説明 |
|---|---|---|
| javaObject | オブジェクト | パッケージコールなどのシステムコードからの Java オブジェクト。 |
| タイプ | 説明 |
|---|---|
| オブジェクト | パラメーターが変換可能な場合は JavaScript オブジェクト、変換不可能な場合は Java オブジェクトを返します。 |
var tu = new TableUtils("cmdb_ci_win_server");
var classes = tu.getHierarchy();
//getHierarchy returns a Java ArrayList, which is not exactly like a JavaScript Array
//for example you cannot get length
gs.print("classes = " + classes);
gs.print("classes.length = " + classes.length);
//convert to a JavaScript Array
gs.include("j2js");
var jsClasses = j2js(classes);
gs.print("jsClasses = " + jsClasses);
gs.print("jsClasses.length = " + jsClasses.length);
出力:
classes = [cmdb_ci_win_server, cmdb_ci_server, cmdb_ci_computer, cmdb_ci_hardware, cmdb_ci]
classes.length = undefined
jsClasses = cmdb_ci_win_server,cmdb_ci_server,cmdb_ci_computer,cmdb_ci_hardware,cmdb_ci
jsClasses.length = 5