ArrayUtil - グローバル
ArrayUtil スクリプトインクルードは、JavaScript 配列を処理するためのメソッドを提供します。
これらのメソッドは、任意のサーバー側のスクリプトで使用できます。
ArrayUtil - concat(アレイ parent, アレイ child)
2 つのアレイをマージします。
| 名前 | タイプ | 説明 |
|---|---|---|
| 親 | アレイ | マージするアレイ |
| 子 | アレイ | マージするアレイ |
| タイプ | 説明 |
|---|---|
| アレイ | 両方の入力アレイからの要素のアレイ。重複は削除されません。 |
var arrayUtil = new ArrayUtil();
var a1 = new Array("a", "b", "c");
var a2 = new Array("c", "d", "e");
gs.print("concat a1, a2: " + arrayUtil.concat(a1, a2));
出力:concat a1, a2: a,b,c,c,d,e
ArrayUtil - contains(アレイ array, オブジェクト element)
指定された要素をアレイ内で検索します。要素がアレイに存在する場合は true を返し、そうでない場合は false を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| アレイ | アレイ | 検索対象のアレイです。 |
| 要素 | オブジェクト | 検索する要素です。 |
| タイプ | 説明 |
|---|---|
| ブーリアン | 要素がアレイ内で見つかったかどうかを示すフラグです。 可能な値:
|
var arrayUtil = new ArrayUtil();
var a1 = new Array("a", "b", "c");
gs.print("Contains b: " + arrayUtil.contains(a1, "b"));
gs.print("Contains x: " + arrayUtil.contains(a1, "x"));
出力 :
Contains b: true
Contains x: falseArrayUtil - convertArray(オブジェクト a)
Java オブジェクトをアレイに変換します。
| 名前 | タイプ | 説明 |
|---|---|---|
| a | オブジェクト | 変換するオブジェクトです。 |
| タイプ | 説明 |
|---|---|
| アレイ | オブジェクトから作成されるアレイ |
この例は、Java オブジェクトをアレイに変換しています。
var arrayUtil = new ArrayUtil();
// Returns a JavaObject with the logged in user's groups
var groupObj = gs.getUser().getMyGroups();
gs.print('groupObj: ' + Object.prototype.toString.call(groupObj));
var groupArr = arrayUtil.convertArray(groupObj);
gs.print('groupArr: ' + Object.prototype.toString.call(groupArr));
出力:
groupObj: [object JavaObject]
groupArr: [object Array]
ArrayUtil - diff(アレイ a, アレイ b)
2 つ以上のアレイの相違点を検出します。
任意の数のアレイをパラメーターとして提供することができます。
| 名前 | タイプ | 説明 |
|---|---|---|
| a | アレイ | アレイ |
| b | アレイ | アレイ |
| タイプ | 説明 |
|---|---|
| アレイ | アレイ b または c、または他の入力アレイに見つからなかったアレイ a からのアイテムのアレイを返します。重複は結果から削除されます。 |
var arrayUtil = new ArrayUtil();
var a1 = new Array("a", "b", "c");
var a2 = new Array("c", "d", "e");
gs.print(arrayUtil.diff(a1, a2));
出力:a,b
ArrayUtil - ensureArray(オブジェクト object)
指定されたオブジェクトからアレイを返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| オブジェクト | オブジェクト | アレイの作成元のオブジェクトです。 |
| タイプ | 説明 |
|---|---|
| アレイ | オブジェクトから作成されるアレイです。 |
次の例は、オブジェクトからアレイを作成し、作成したアレイを表示する方法を示しています。
var arrayUtil = new ArrayUtil();
var o1 = {a:"1",b:"2",c:"3"};
gs.print('o1 is array: ' + Array.isArray(o1));
gs.print('o1 stringified: ' + JSON.stringify(o1));
var a1 = arrayUtil.ensureArray(o1);
gs.print('a1 is array: ' + Array.isArray(a1));
gs.print('a1 stringified: ' + JSON.stringify(a1));
出力 :
o1 is array: false
o1 stringified: {"a":"1","b":"2","c":"3"}
a1 is array: true
a1 stringified: [{"a":"1","b":"2","c":"3"}]次の例は、オブジェクトからアレイを作成し、アレイの内容を表示する方法を示しています。
var stock = { 'name': 'Servicenow', 'sym': 'NOW' };
var arr = new ArrayUtil();
var stArray = arr.ensureArray(stock);
gs.info("Name is " + stArray[0]['name']);
gs.info("Symbol is " + stArray[0]['sym']);
出力:
Name is Servicenow
Symbol is NOWArrayUtil - indexOf(アレイ array, オブジェクト element)
要素のアレイを検索します。要素インデックスを返します。見つからない場合は -1 を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| アレイ | アレイ | 検索対象のアレイです。 |
| 要素 | オブジェクト | 検索する要素です。 |
| タイプ | 説明 |
|---|---|
| 番号 | アレイ内の要素の位置です。要素が見つからない場合は -1 です。 |
var arrayUtil = new ArrayUtil();
var arr = new Array("a", "b", "c", "x", "y", "z");
gs.print("Array: " + arr);
gs.print("Index of a: " + arrayUtil.indexOf(arr, "a"));
gs.print("Index of a starting at 2: " + arrayUtil.indexOf(arr, "a", 2));
gs.print("Index of c: " + arrayUtil.indexOf(arr, "c"));
gs.print("Index of c starting at 1: " + arrayUtil.indexOf(arr, "c", 1));
gs.print("Index of z: " + arrayUtil.indexOf(arr, "z"));
gs.print("Index of z starting at 4: " + arrayUtil.indexOf(arr, "z", 4));
// If negative value is sent as startIndex then (startIndex + length of array ) is considered as start index.
// startIndex = -1+(6); startIndex is considered as 5 in this case
gs.print("Index of c starting at -1 (Re-Calculated to 5): " + arrayUtil.indexOf(arr, "c", -1));
// startIndex = -10+(6) which is -4,if negative value again then startIndex is considered as 0
gs.print("Index of c starting at -10 (Re-Calculated to 0): " + arrayUtil.indexOf(arr, "c", -10));
出力:
Array: a,b,c,x,y,z
Index of a: 0
Index of a starting at 2: -1
Index of c: 2
Index of c starting at 1: 2
Index of z: 5
Index of z starting at 4: 5
Index of c starting at -1 (Re-Calculated to 5): -1
Index of c starting at -10 (Re-Calculated to 0): 2ArrayUtil - indexOf(アレイ array, オブジェクト element, 数値 startIndex)
指定されたインデックスで始まる要素をアレイ内で検索します。要素のインデックスを返します。見つからない場合は -1 を返します。
| 名前 | タイプ | 説明 |
|---|---|---|
| アレイ | アレイ | 検索対象のアレイです。 |
| 要素 | オブジェクト | 検索する要素です。 |
| startIndex | 番号 | 検索を開始するインデックスです。 |
| タイプ | 説明 |
|---|---|
| 番号 | アレイ内の要素の位置です。要素が見つからない場合は -1 です。 |
var arrayUtil = new ArrayUtil();
var arr = new Array("a", "b", "c", "x", "y", "z");
gs.print("Array: " + arr);
gs.print("Index of a: " + arrayUtil.indexOf(arr, "a"));
gs.print("Index of a starting at 2: " + arrayUtil.indexOf(arr, "a", 2));
gs.print("Index of c: " + arrayUtil.indexOf(arr, "c"));
gs.print("Index of c starting at 1: " + arrayUtil.indexOf(arr, "c", 1));
gs.print("Index of z: " + arrayUtil.indexOf(arr, "z"));
gs.print("Index of z starting at 4: " + arrayUtil.indexOf(arr, "z", 4));
// If negative value is sent as startIndex then (startIndex + length of array ) is considered as start index.
// startIndex = -1+(6); startIndex is considered as 5 in this case
gs.print("Index of c starting at -1 (Re-Calculated to 5): " + arrayUtil.indexOf(arr, "c", -1));
// startIndex = -10+(6) which is -4,if negative value again then startIndex is considered as 0
gs.print("Index of c starting at -10 (Re-Calculated to 0): " + arrayUtil.indexOf(arr, "c", -10));
出力:
Array: a,b,c,x,y,z
Index of a: 0
Index of a starting at 2: -1
Index of c: 2
Index of c starting at 1: 2
Index of z: 5
Index of z starting at 4: 5
Index of c starting at -1 (Re-Calculated to 5): -1
Index of c starting at -10 (Re-Calculated to 0): 2ArrayUtil - intersect(アレイ a, アレイ b)
すべてのアレイに存在する要素を検索します。
任意の数のアレイをパラメーターとして提供することができます。
| 名前 | タイプ | 説明 |
|---|---|---|
| a | アレイ | アレイ |
| b | アレイ | アレイ |
| タイプ | 説明 |
|---|---|
| アレイ | 他のすべての入力アレイで見つかったアレイの要素のアレイ。重複は削除されます。 |
var arrayUtil = new ArrayUtil();
var a1 = new Array("a", "b", "c");
var a2 = new Array("c", "d", "e");
gs.print(arrayUtil.intersect(a1, a2));
出力:c
ArrayUtil - union(アレイ a, アレイ b)
2 つ以上のアレイをマージします。
任意の数のアレイをパラメーターとして提供することができます。
| 名前 | タイプ | 説明 |
|---|---|---|
| a | アレイ | アレイ |
| b | アレイ | アレイ |
| タイプ | 説明 |
|---|---|
| アレイ | すべての入力アレイからの項目のアレイ。重複は削除されます。 |
var arrayUtil = new ArrayUtil();
var a1 = new Array("a", "b", "c");
var a2 = new Array("c", "d", "e");
gs.print(arrayUtil.union(a1, a2));
出力:a,b,c,d,e
ArrayUtil - unique(アレイ a)
アレイから重複した項目を削除します。
| 名前 | タイプ | 説明 |
|---|---|---|
| a | アレイ | 重複する要素をチェックするアレイ |
| タイプ | 説明 |
|---|---|
| アレイ | 入力アレイからの一意のアイテムのアレイ |
var arrayUtil = new ArrayUtil();
var a1 = new Array("a", "b", "c", "c", "b");
gs.print(arrayUtil.unique(a1));
出力:a,c,b