ArrayUtil - 전역

  • 릴리스 버전: Washingtondc
  • 업데이트 날짜 2024년 02월 01일
  • 읽기10분
  • ArrayUtil API는 JavaScript 배열 작업에 유용한 함수가 포함된 스크립트입니다.

    이러한 메서드는 모든 서버 쪽 스크립트에서 사용할 수 있습니다.

    ArrayUtil - concat(배열 상위, 배열 자식)

    두 배열을 병합합니다.

    표 1. 매개변수
    이름 유형 설명
    상위 배열 병합할 배열
    하위 배열 병합할 배열
    표 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(배열, 배열, 객체 요소)

    배열에서 지정된 요소를 검색합니다. 요소가 배열에 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

    표 3. 매개변수
    이름 유형 설명
    배열 배열 검색할 배열입니다.
    요소 객체 검색할 요소입니다.
    표 4. 반환
    유형 설명
    부울 배열에서 요소를 찾을 수 있는지 여부를 나타내는 플래그입니다.
    가능한 값:
    • 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: false

    ArrayUtil - convertArray(객체 a)

    Java 객체를 배열로 변환합니다.

    표 5. 매개변수
    이름 유형 설명
    a 객체 변환할 객체입니다.
    표 6. 반환
    유형 설명
    배열 객체에서 생성된 배열입니다.

    이 예제에서는 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)

    둘 이상의 배열 간의 차이를 찾습니다.

    매개 변수로 제공할 수 있는 배열 수에는 제한이 없습니다.

    표 7. 매개변수
    이름 유형 설명
    a 배열 배열
    b 배열 배열
    표 8. 반환
    유형 설명
    배열 배열 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(객체 객체)

    지정된 개체에서 배열을 반환합니다.

    표 9. 매개변수
    이름 유형 설명
    객체 객체 배열을 생성할 객체입니다.
    표 10. 반환
    유형 설명
    배열 객체에서 생성된 배열입니다.

    다음 예제에서는 개체에서 배열을 만들고 만든 배열을 표시하는 방법을 보여 줍니다.

    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 NOW

    ArrayUtil - indexOf(배열, 배열, 객체 요소)

    배열에서 요소를 검색합니다. 요소 인덱스를 반환하거나, 찾을 수 없는 경우 -1을 반환합니다.

    표 11. 매개변수
    이름 유형 설명
    배열 배열 검색할 배열입니다.
    요소 객체 검색할 요소입니다.
    표 12. 반환
    유형 설명
    번호 배열에서 요소의 위치이거나, 요소를 찾을 수 없는 경우 -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): 2

    ArrayUtil - indexOf(배열 배열, 객체 요소, 숫자 startIndex)

    배열에서 지정된 인덱스에서 시작하는 요소를 검색합니다. 요소 인덱스를 반환하거나, 찾을 수 없는 경우 -1을 반환합니다.

    표 13. 매개변수
    이름 유형 설명
    배열 배열 검색할 배열입니다.
    요소 객체 검색할 요소입니다.
    startIndex 번호 검색을 시작할 인덱스입니다.
    표 14. 반환
    유형 설명
    번호 배열에서 요소의 위치이거나, 요소를 찾을 수 없는 경우 -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): 2

    ArrayUtil - intersect(배열 a, 배열 b)

    모든 배열에 있는 요소를 찾습니다.

    매개 변수로 제공할 수 있는 배열 수에는 제한이 없습니다.

    표 15. 매개변수
    이름 유형 설명
    a 배열 배열
    b 배열 배열
    표 16. 반환
    유형 설명
    배열 다른 모든 입력 배열에 있는 배열 a의 요소 배열입니다. 중복 항목이 제거됩니다.
    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)

    두 개 이상의 배열을 병합합니다.

    매개 변수로 제공할 수 있는 배열 수에는 제한이 없습니다.

    표 17. 매개변수
    이름 유형 설명
    a 배열 배열
    b 배열 배열
    표 18. 반환
    유형 설명
    배열 모든 입력 배열의 항목 배열입니다. 중복 항목이 제거됩니다.
    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)

    배열에서 중복 항목을 제거합니다.

    표 19. 매개변수
    이름 유형 설명
    a 배열 중복 요소를 확인할 배열입니다.
    표 20. 반환
    유형 설명
    배열 입력 배열의 고유 항목 배열입니다.
    var arrayUtil = new ArrayUtil();
    var a1 = new Array("a", "b", "c", "c", "b");
    gs.print(arrayUtil.unique(a1));

    출력: a,c,b