Class ItemResponse

항목응답

양식 내의 한 가지 질문 항목에 대한 응답입니다. 항목 응답은 FormResponse에서 액세스할 수 있으며 응답자에게 질문에 답변하도록 요청하는 모든 Item에서 만들 수 있습니다.

// Open a form by ID and log the responses to each question.
const form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');
const formResponses = form.getResponses();
for (let i = 0; i < formResponses.length; i++) {
  const formResponse = formResponses[i];
  const itemResponses = formResponse.getItemResponses();
  for (let j = 0; j < itemResponses.length; j++) {
    const itemResponse = itemResponses[j];
    Logger.log(
        'Response #%s to the question "%s" was "%s"',
        (i + 1).toString(),
        itemResponse.getItem().getTitle(),
        itemResponse.getResponse(),
    );
  }
}

메서드

메서드반환 유형간략한 설명
getFeedback()Object응답자가 제출한 답변에 대해 제공된 의견을 가져옵니다.
getItem()Item이 응답이 답하는 질문 항목을 가져옵니다.
getResponse()Object응답자가 제출한 답변을 가져옵니다.
getScore()Object응답자가 제출한 답변의 점수를 가져옵니다.
setFeedback(feedback)ItemResponse응답자가 제출한 답변에 대해 표시할 의견을 설정합니다.
setScore(score)ItemResponse응답자가 제출한 답변의 점수를 설정합니다.

자세한 문서

getFeedback()

응답자가 제출한 답변에 대해 제공된 의견을 가져옵니다.

리턴

Object: 질문 항목의 QuizFeedback

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getItem()

이 응답이 답하는 질문 항목을 가져옵니다.

리턴

Item: 이 대답이 답하는 질문 항목

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getResponse()

응답자가 제출한 답변을 가져옵니다. 대부분의 유형의 질문 항목의 경우 String이 반환됩니다.

CheckboxItem 질문의 경우 응답자의 선택사항이 포함된 String[] 배열을 반환합니다. 배열의 문자열 순서는 다를 수 있습니다.

GridItem 질문의 경우 색인이 n인 답변이 그리드의 n + 1 행에 있는 질문에 해당하는 String[] 배열을 반환합니다. 응답자가 그리드의 질문에 답변하지 않은 경우 해당 답변은 ''로 반환됩니다.

CheckboxGridItem 질문의 경우 행 색인 n의 답변이 체크박스 그리드의 행 n + 1에 있는 질문에 해당하는 String[][] 배열을 반환합니다. 응답자가 그리드의 질문에 답변하지 않은 경우 해당 답변은 ''로 반환됩니다.

리턴

Object: 질문 항목에 대한 답변의 String, String[] 또는 String[][]

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

getScore()

응답자가 제출한 답변의 점수를 가져옵니다.

리턴

Object: 질문 항목의 점수를 나타내는 Double입니다.

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setFeedback(feedback)

응답자가 제출한 답변에 대해 표시할 의견을 설정합니다.

이 메서드는 업데이트된 FormResponses로 Form.submitGrades(responses)가 호출될 때까지 실제로 Forms에 의견을 저장하지 않습니다. 예를 보려면 setScore()을 참고하세요.

매개변수

이름유형설명
feedbackObject

리턴

ItemResponse: 체이닝을 위한 ItemResponse

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms

setScore(score)

응답자가 제출한 답변의 점수를 설정합니다. null 값은 기존 점수를 삭제합니다.

이 메서드는 업데이트된 FormResponses로 Form.submitGrades(responses)가 호출될 때까지 실제로 Forms에 점수를 저장하지 않습니다.

// For a multiple choice question with options: "Always true", "Sometimes true",
// and "Never", award half credit for responses that answered "Sometimes true".
const formResponses = FormApp.getActiveForm().getResponses();
// Go through each form response
for (let i = 0; i < formResponses.length; i++) {
  const response = formResponses[i];
  const items = FormApp.getActiveForm().getItems();
  // Assume it's the first item
  const item = items[0];
  const itemResponse = response.getGradableResponseForItem(item);
  // Give half credit for "Sometimes true".
  if (itemResponse != null && itemResponse.getResponse() === 'Sometimes true') {
    const points = item.asMultipleChoiceItem().getPoints();
    itemResponse.setScore(points * 0.5);
    // This saves the grade, but does not submit to Forms yet.
    response.withItemGrade(itemResponse);
  }
}
// Grades are actually submitted to Forms here.
FormApp.getActiveForm().submitGrades(formResponses);

매개변수

이름유형설명
scoreObject

리턴

ItemResponse: 체이닝을 위한 ItemResponse

승인

이 메서드를 사용하는 스크립트에는 다음 범위 중 하나 이상의 승인이 필요합니다.

  • https://www.googleapis.com/auth/forms.currentonly
  • https://www.googleapis.com/auth/forms