상위 함수 (Google Apps Script)의 변수 (배열)를 사용하여 Map 함수 내에서 실행되는 indexOf

Maxwell

저는 Google Apps Script / Javascript를 처음 사용하며 더 빠르게 만들기 위해 원래 코드의 두 번째 반복 작업을 진행 중입니다. 내 첫 번째 코드는 기본 Google 시트에 대한 많은 가져 오기 및 설정을 수행했지만 이제 수정 된 값을 설정하기 전에 배열에서 모든 작업을 수행하려고합니다. 내가 붙어있는 현재 코드 블록은 map 함수를 실행하는 동안 indexOf를 실행하려는 시도입니다.

아래 스크립트는 작업 표 데이터로 가득 찬 배열의 모든 행을 실행하고 열을 다양하게 수정하고 새 열 값을 계산합니다.

var = amendedTimesheetData = timesheetdata.map(function(item){
    item.splice(2, 0, item[0] + " " + item[1]);
    item.splice(4, 0, item[0].slice(0, 2) + item[1].slice(0, 2) + date(item[3]));
    item.splice(0, 2);
    item.splice(3, 0, "Open");
    item.splice(4, 0, accountingCode); //SEE ISSUE BELOW

    return item  
  })
}

계정 코드 변수는 배열 열 중 하나의 값을 기반으로 vlookup의 Javascript 버전을 수행 한 것에 의존합니다. 조회 값 은 시트의 다른 탭에서 가져온 다른 배열에 있습니다. 조회를 수행하는 코드는 다음과 같습니다.

  var timeTrackingCode = item[6]; //this is the location in the mapped array of the value to be looked up
  var timeTrackingCodeRow = codeMappingData.map(function(r){ return r[0]; }).indexOf(timeTrackingCode);
  var accountingCode = codeMappingData[timeTrackingCodeRow][1]

위 코드의 공식 은 map 함수가 실행되기 전에 부모 함수에서 이전에 만들어진 codeMappingData 변수 에 의존 합니다.

  var codeMappingSheet = ss.getSheetByName('CodeMapping');
  var codeMappingRange = codeMappingSheet.getDataRange();
  var codeMappingData = codeMappingRange.getValues();

질문 : map 함수 에서 codeMappingData 배열을 어떻게 참조 합니까?

이 문제를 해결하는 다른 옵션은 맵과 별도로 For 루프를 실행하는 것이지만 모든 가능성을 배우려고 노력하면서 변수를 전달하고 모든 열 조작을 수행하는 방법을 이해하려고 노력하고 있습니다. 가능한 한 적은 코드. 변수 전달 방법에 대한 지침이나 코드가 더 효율적일 수있는 방법에 대한 팁은 모두 매우 가치가 있습니다. 나는 약간의 코드만을 복사했기 때문에 문맥이 부족할 수 있지만 질문은 분명하다고 생각합니다.

Map 함수 내에서 codeMappingData 변수를 설정하는 것은 좋지 않다고 가정했습니다. 행을 반복 할 때마다 시트에서 가져 오기를 수행하기 때문입니다. 내가 이것을 가정하는 것이 틀렸다면 아마도 가장 간단한 방법은 맵 내에서 변수를 설정하는 것입니다.

감사합니다,

더 마스터

내부 또는 하위 범위는 항상 외부 또는 상위 범위의 변수에 액세스 할 수 있습니다.

function outerFunction(){
  const outerScopeVar = 5;
  const arr = [1,2,3];
  arr.map(num => {
    console.info(`I have access to both inner and outer scope variable: ${num} and ${outerScopeVar}`);
  })
}
outerFunction();

참조 :

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

내부 함수에서 함수 범위의 변수를 변경하는 방법

분류에서Dev

인증을 사용하여 Google Apps Script에서 Cloud 함수를 호출하는 방법은 무엇입니까?

분류에서Dev

Google Apps Script는 배열 값을 반환하고 자바 스크립트 함수에서 사용합니다.

분류에서Dev

함수 실행시 내 상태에서 조작 된 객체 배열의 순서를 유지하는 방법

분류에서Dev

두 개 이상의 매개 변수가있는 함수를 호출하기 위해 map을 사용하는 Haskell

분류에서Dev

array.map 함수를 사용하여 배열 내부의 객체 값을 업데이트하기 위해 반응에서 상태를 업데이트하는 방법

분류에서Dev

forEach 루프 내에서 이전 i 값을 복사하여 붙여 넣는 Google Apps Script 함수

분류에서Dev

Javascript는 항상 가장 긴 배열에서 함수를 실행하고 해당 함수 내에서 가장 짧은 배열을 사용합니다.

분류에서Dev

Google Apps Script를 사용하여 Google 문서의 표 셀 내에서 텍스트 데이터를 복사하고 수정하는 방법

분류에서Dev

Google Apps Script에서 google.script.run을 사용하여 JS 개체를 서버 함수에 전달하는 방법은 무엇입니까?

분류에서Dev

배열을 사용하여 포트란에서 변수 함수를 정의하는 방법

분류에서Dev

Google Apps Script에서 함수를 가져 오는 방법

분류에서Dev

한 함수의 배열을 다른 함수 내에서 사용하는 방법

분류에서Dev

file.makeCopy () 함수를 사용하여 복제 된 사본 (Google Apps Script)

분류에서Dev

Swift의 다른 함수 내에서 호출하는 함수의 상수 사용

분류에서Dev

하위 함수에서 함수 변수를 사용하는 방법

분류에서Dev

Google Maps Javascript API를 사용하여 외부 함수에서 내부 함수 변수 사용

분류에서Dev

추상 함수를 사용하여 목록에서 특정 문자열의 위치를 찾는 방법

분류에서Dev

AngularJS를 사용하여 컨트롤러 내부 상단에 배치 된 함수의 하단에서 함수를 호출하는 방법

분류에서Dev

"indexOf"함수를 실행하기 전에 EL 변수의 유형을 어떻게 확인합니까?

분류에서Dev

.map () 함수를 사용하여 useEffect 내의 중첩 된 setState에서 작동하지 않는 확산 연산자

분류에서Dev

Google Apps Script : doGet 및 doPost에 대한 스크립트를 실행하는 여러 사용자가 변수를 혼동 할 수 있습니까?

분류에서Dev

내 Gmail에서 Google Apps Script를 실행할 수 없습니다.

분류에서Dev

$ location.search ()-$ scope. $ watch 함수 내에서 범위의 매개 변수를 사용하는 방법?

분류에서Dev

Google Apps Script에서 참조로 함수 간 변수 전달

분류에서Dev

브라우저의 변수에서 전역 상수 함수를 실행하는 방법

분류에서Dev

purrr에서 map_ * 함수를 사용하여 여러 파일을 읽고 각각의 변수 수를 계산하는 방법은 무엇입니까?

분류에서Dev

다음 중 함수 정의를 실행하고 함수를 호출 할 때 함수 본문 내에서 수행되는 셸 작업은 무엇입니까?

분류에서Dev

Kotlin의 다른 함수에서 매개 변수를 사용하여 함수를 호출하는 방법

Related 관련 기사

  1. 1

    내부 함수에서 함수 범위의 변수를 변경하는 방법

  2. 2

    인증을 사용하여 Google Apps Script에서 Cloud 함수를 호출하는 방법은 무엇입니까?

  3. 3

    Google Apps Script는 배열 값을 반환하고 자바 스크립트 함수에서 사용합니다.

  4. 4

    함수 실행시 내 상태에서 조작 된 객체 배열의 순서를 유지하는 방법

  5. 5

    두 개 이상의 매개 변수가있는 함수를 호출하기 위해 map을 사용하는 Haskell

  6. 6

    array.map 함수를 사용하여 배열 내부의 객체 값을 업데이트하기 위해 반응에서 상태를 업데이트하는 방법

  7. 7

    forEach 루프 내에서 이전 i 값을 복사하여 붙여 넣는 Google Apps Script 함수

  8. 8

    Javascript는 항상 가장 긴 배열에서 함수를 실행하고 해당 함수 내에서 가장 짧은 배열을 사용합니다.

  9. 9

    Google Apps Script를 사용하여 Google 문서의 표 셀 내에서 텍스트 데이터를 복사하고 수정하는 방법

  10. 10

    Google Apps Script에서 google.script.run을 사용하여 JS 개체를 서버 함수에 전달하는 방법은 무엇입니까?

  11. 11

    배열을 사용하여 포트란에서 변수 함수를 정의하는 방법

  12. 12

    Google Apps Script에서 함수를 가져 오는 방법

  13. 13

    한 함수의 배열을 다른 함수 내에서 사용하는 방법

  14. 14

    file.makeCopy () 함수를 사용하여 복제 된 사본 (Google Apps Script)

  15. 15

    Swift의 다른 함수 내에서 호출하는 함수의 상수 사용

  16. 16

    하위 함수에서 함수 변수를 사용하는 방법

  17. 17

    Google Maps Javascript API를 사용하여 외부 함수에서 내부 함수 변수 사용

  18. 18

    추상 함수를 사용하여 목록에서 특정 문자열의 위치를 찾는 방법

  19. 19

    AngularJS를 사용하여 컨트롤러 내부 상단에 배치 된 함수의 하단에서 함수를 호출하는 방법

  20. 20

    "indexOf"함수를 실행하기 전에 EL 변수의 유형을 어떻게 확인합니까?

  21. 21

    .map () 함수를 사용하여 useEffect 내의 중첩 된 setState에서 작동하지 않는 확산 연산자

  22. 22

    Google Apps Script : doGet 및 doPost에 대한 스크립트를 실행하는 여러 사용자가 변수를 혼동 할 수 있습니까?

  23. 23

    내 Gmail에서 Google Apps Script를 실행할 수 없습니다.

  24. 24

    $ location.search ()-$ scope. $ watch 함수 내에서 범위의 매개 변수를 사용하는 방법?

  25. 25

    Google Apps Script에서 참조로 함수 간 변수 전달

  26. 26

    브라우저의 변수에서 전역 상수 함수를 실행하는 방법

  27. 27

    purrr에서 map_ * 함수를 사용하여 여러 파일을 읽고 각각의 변수 수를 계산하는 방법은 무엇입니까?

  28. 28

    다음 중 함수 정의를 실행하고 함수를 호출 할 때 함수 본문 내에서 수행되는 셸 작업은 무엇입니까?

  29. 29

    Kotlin의 다른 함수에서 매개 변수를 사용하여 함수를 호출하는 방법

뜨겁다태그

보관