ArrayUtil - Global

  • Versão de lançamento: Zurich
  • Atualizado 31 de jul. de 2025
  • 6 min. de leitura
  • . ArrayUtil A inclusão de script fornece métodos para trabalhar com matrizes JavaScript.

    Esses métodos estão disponíveis para qualquer script do lado do servidor.

    ArrayUtil - concat (matriz primária, matriz secundária)

    Mesclar duas matrizes.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    primário Matriz Uma matriz a ser mesclada
    secundário Matriz Uma matriz a ser mesclada
    Tabela 2. Retornos
    Tipo Descrição
    Matriz Uma matriz de elementos de ambas as matrizes de entrada. Duplicatas não são removidas.
    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));

    Saída: Concat a1, a2: A,b,c,c,d,e.

    ArrayUtil - Contém(matriz, elemento objeto)

    Pesquisa a matriz do elemento especificado. Retorna verdadeiro se o elemento existir na matriz, caso contrário, retornará falso.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    matriz Matriz Matriz a ser pesquisada.
    elemento Objeto Elemento a ser pesquisado.
    Tabela 4. Retornos
    Tipo Descrição
    Booliano Sinalizador que indica se o elemento foi encontrado na matriz.
    Valores possíveis:
    • Verdadeiro: Elemento encontrado na matriz.
    • Falso: Elemento não encontrado na matriz.
    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"));
    Saída:
    Contains b: true
    Contains x: false

    ArrayUtil - convertArray(Objeto A)

    Converte um objeto Java em uma matriz.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    A Objeto Objeto a ser convertido.
    Tabela 6. Retornos
    Tipo Descrição
    Matriz Matriz criada a partir do objeto.

    Este exemplo converte um objeto Java em uma matriz.

    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));

    Saída:

    groupObj: [object JavaObject]
    groupArr: [object Array]

    ArrayUtil - diff(matriz a, matriz b)

    Encontra as diferenças entre duas ou mais matrizes.

    Qualquer número de matrizes pode ser fornecido como parâmetros.

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    A Matriz Uma matriz
    b Matriz Uma matriz
    Tabela 8. Retornos
    Tipo Descrição
    Matriz Retorna uma matriz de itens da matriz a que não foram encontrados na matriz b ou c ou em outras matrizes de entrada. Duplicatas são removidas do resultado.
    var arrayUtil = new ArrayUtil();
    var a1 = new Array("a", "b", "c");
    var a2 = new Array("c", "d", "e");
    gs.print(arrayUtil.diff(a1, a2));

    Saída: A,b

    ArrayUtil - ensureArray(objeto de objeto)

    Retorna uma matriz do objeto especificado.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    objeto Objeto Objeto a partir do qual criar uma matriz.
    Tabela 10. Retornos
    Tipo Descrição
    Matriz Matriz criada a partir do objeto.

    O exemplo a seguir mostra como criar uma matriz a partir de um objeto e exibir a matriz criada.

    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));
    Saída:
    o1 is array: false
    o1 stringified: {"a":"1","b":"2","c":"3"}
    a1 is array: true
    a1 stringified: [{"a":"1","b":"2","c":"3"}]

    O exemplo a seguir mostra como criar uma matriz a partir de um objeto e exibir o conteúdo da matriz.

    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']);
    Saída:
    Name is Servicenow
    Symbol is NOW

    ArrayUtil - indexOf(matriz, elemento objeto)

    Pesquisa o elemento na matriz. Retorna o índice do elemento ou -1 se não for encontrado.

    Tabela 11. Parâmetros
    Nome Tipo Descrição
    matriz Matriz Matriz a ser pesquisada.
    elemento Objeto Elemento a ser pesquisado.
    Tabela 12. Retornos
    Tipo Descrição
    Número Posição do elemento na matriz ou -1 se o elemento não for encontrado.
    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)); 
    Saída:
    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): 2

    ArrayUtil - indexOf(matriz de matriz, elemento de objeto, número startIndex)

    Pesquisa a matriz do elemento que começa no índice especificado. Retorna o índice do elemento ou -1 se não for encontrado.

    Tabela 13. Parâmetros
    Nome Tipo Descrição
    matriz Matriz Matriz a ser pesquisada.
    elemento Objeto Elemento a ser pesquisado.
    startIndex Número Índice a partir do qual iniciar a pesquisa.
    Tabela 14. Retornos
    Tipo Descrição
    Número Posição do elemento na matriz ou -1 se o elemento não for encontrado.
    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)); 
    Saída:
    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): 2

    ArrayUtil - Intersect (matriz a, matriz b)

    Encontra os elementos presentes em todas as matrizes.

    Qualquer número de matrizes pode ser fornecido como parâmetros.

    Tabela 15. Parâmetros
    Nome Tipo Descrição
    A Matriz Uma matriz
    b Matriz Uma matriz
    Tabela 16. Retornos
    Tipo Descrição
    Matriz Uma matriz de elementos da matriz A que foram encontrados em todas as outras matrizes de entrada. Duplicatas são removidas.
    var arrayUtil = new ArrayUtil();
    var a1 = new Array("a", "b", "c");
    var a2 = new Array("c", "d", "e");
    gs.print(arrayUtil.intersect(a1, a2));

    Saída: c

    ArrayUtil - união (Matriz A, Matriz B)

    Mesclar duas ou mais matrizes.

    Qualquer número de matrizes pode ser fornecido como parâmetros.

    Tabela 17. Parâmetros
    Nome Tipo Descrição
    A Matriz Uma matriz
    b Matriz Uma matriz
    Tabela 18. Retornos
    Tipo Descrição
    Matriz Uma matriz de itens de todas as matrizes de entrada. Duplicatas são removidas.
    var arrayUtil = new ArrayUtil();
    var a1 = new Array("a", "b", "c");
    var a2 = new Array("c", "d", "e");
    gs.print(arrayUtil.union(a1, a2));

    Saída: A,b,c,d,e

    ArrayUtil - UNIQUE (matriz A)

    Remove itens duplicados de uma matriz.

    Tabela 19. Parâmetros
    Nome Tipo Descrição
    A Matriz A matriz para verificar se há elementos duplicados.
    Tabela 20. Retornos
    Tipo Descrição
    Matriz Uma matriz de itens exclusivos da matriz de entrada.
    var arrayUtil = new ArrayUtil();
    var a1 = new Array("a", "b", "c", "c", "b");
    gs.print(arrayUtil.unique(a1));

    Saída: A,c,b