Class ItemResponse
Organiza tus páginas con colecciones
Guarda y categoriza el contenido según tus preferencias.
ItemResponse
Es una respuesta a un elemento de pregunta dentro de un formulario. Se puede acceder a las respuestas de los elementos desde FormResponse
y crearlas desde cualquier Item
que le solicite al encuestado que responda una pregunta.
// 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(),
);
}
}
Métodos
Método | Tipo de datos que se muestra | Descripción breve |
getFeedback() | Object | Obtiene los comentarios que se proporcionaron para la respuesta enviada del encuestado. |
getItem() | Item | Obtiene el elemento de pregunta que responde esta respuesta. |
getResponse() | Object | Obtiene la respuesta que envió el encuestado. |
getScore() | Object | Obtiene la puntuación de la respuesta enviada por el encuestado. |
setFeedback(feedback) | ItemResponse | Establece los comentarios que se deben mostrar para la respuesta enviada del encuestado. |
setScore(score) | ItemResponse | Establece la puntuación de la respuesta enviada por el encuestado. |
Documentación detallada
getFeedback()
Obtiene los comentarios que se proporcionaron para la respuesta enviada del encuestado.
Volver
Object
: Es un QuizFeedback
para el elemento de pregunta.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getItem()
Obtiene el elemento de pregunta que responde esta respuesta.
Volver
Item
: Es el elemento de pregunta al que responde esta respuesta.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getResponse()
Obtiene la respuesta que envió el encuestado. Para la mayoría de los tipos de elementos de pregunta, se muestra un String
.
Para las preguntas CheckboxItem
, muestra un array String[]
que contiene las opciones del encuestado. El orden de las cadenas en el array puede variar.
En el caso de las preguntas GridItem
, se muestra un array String[]
en el que la respuesta en el índice n
corresponde a la pregunta en la fila n + 1
de la cuadrícula. Si un encuestado no respondió una pregunta de la cuadrícula, esa respuesta se muestra como ''
.
En el caso de las preguntas CheckboxGridItem
, se muestra un array String[][]
en el que las respuestas en el índice de fila n
corresponden a la pregunta en la fila n + 1
de la cuadrícula de cuadros de verificación. Si un encuestado no respondió una pregunta de la cuadrícula, esa respuesta se muestra como ''
.
Volver
Object
: Es un String
, String[]
o String[][]
de respuestas a la pregunta.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
getScore()
Obtiene la puntuación de la respuesta enviada por el encuestado.
Volver
Object
: Es un Double
que representa la puntuación del elemento de pregunta.
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
setFeedback(feedback)
Establece los comentarios que se deben mostrar para la respuesta enviada del encuestado.
En realidad, este método no guarda los comentarios en Formularios hasta que se llama a Form.submitGrades(responses)
con los FormResponses actualizados. Consulta setScore()
para ver un ejemplo.
Parámetros
Nombre | Tipo | Descripción |
feedback | Object | |
Volver
ItemResponse
: Un ItemResponse
para encadenar
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
setScore(score)
Establece la puntuación de la respuesta enviada por el encuestado. Un valor nulo borrará la puntuación existente.
En realidad, este método no guarda la puntuación en Formularios hasta que se llama a Form.submitGrades(responses)
con las FormResponses actualizadas.
// 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);
Parámetros
Nombre | Tipo | Descripción |
score | Object | |
Volver
ItemResponse
: Un ItemResponse
para encadenar
Autorización
Las secuencias de comandos que usan este método requieren autorización con uno o más de los siguientes ámbitos:
-
https://www.googleapis.com/auth/forms.currentonly
-
https://www.googleapis.com/auth/forms
Salvo que se indique lo contrario, el contenido de esta página está sujeto a la licencia Atribución 4.0 de Creative Commons, y los ejemplos de código están sujetos a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-07-26 (UTC)
[null,null,["Última actualización: 2025-07-26 (UTC)"],[[["\u003cp\u003eAn \u003ccode\u003eItemResponse\u003c/code\u003e represents an answer to a single question within a Google Form.\u003c/p\u003e\n"],["\u003cp\u003eYou can access individual item responses through a \u003ccode\u003eFormResponse\u003c/code\u003e object.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eItemResponse\u003c/code\u003e objects provide methods to get and set feedback and scores for answers, as well as retrieve the question itself and the respondent's answer.\u003c/p\u003e\n"],["\u003cp\u003eScores and feedback set using \u003ccode\u003eItemResponse\u003c/code\u003e methods must be saved to the form using \u003ccode\u003eForm.submitGrades()\u003c/code\u003e to take effect.\u003c/p\u003e\n"]]],[],null,["# Class ItemResponse\n\nItemResponse\n\nA response to one question item within a form. Item responses can be accessed from [FormResponse](/apps-script/reference/forms/form-response) and created from any [Item](/apps-script/reference/forms/item) that asks the respondent to answer a question.\n\n```javascript\n// Open a form by ID and log the responses to each question.\nconst form = FormApp.openById('1234567890abcdefghijklmnopqrstuvwxyz');\nconst formResponses = form.getResponses();\nfor (let i = 0; i \u003c formResponses.length; i++) {\n const formResponse = formResponses[i];\n const itemResponses = formResponse.getItemResponses();\n for (let j = 0; j \u003c itemResponses.length; j++) {\n const itemResponse = itemResponses[j];\n Logger.log(\n 'Response #%s to the question \"%s\" was \"%s\"',\n (i + 1).toString(),\n itemResponse.getItem().getTitle(),\n itemResponse.getResponse(),\n );\n }\n}\n``` \n\n### Methods\n\n| Method | Return type | Brief description |\n|-----------------------------------------------|-------------------------------------------|-----------------------------------------------------------------------------------|\n| [getFeedback()](#getFeedback()) | `Object` | Gets the feedback that was given for the respondent's submitted answer. |\n| [getItem()](#getItem()) | [Item](/apps-script/reference/forms/item) | Gets the question item that this response answers. |\n| [getResponse()](#getResponse()) | `Object` | Gets the answer that the respondent submitted. |\n| [getScore()](#getScore()) | `Object` | Gets the score for the respondent's submitted answer. |\n| [setFeedback(feedback)](#setFeedback(Object)) | [ItemResponse](#) | Sets the feedback that should be displayed for the respondent's submitted answer. |\n| [setScore(score)](#setScore(Object)) | [ItemResponse](#) | Sets the score for the respondent's submitted answer. |\n\nDetailed documentation\n----------------------\n\n### `get``Feedback()`\n\nGets the feedback that was given for the respondent's submitted answer.\n\n#### Return\n\n\n`Object` --- a `Quiz``Feedback` for the question item\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`\n\n*** ** * ** ***\n\n### `get``Item()`\n\nGets the question item that this response answers.\n\n#### Return\n\n\n[Item](/apps-script/reference/forms/item) --- the question item that this response answers\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`\n\n*** ** * ** ***\n\n### `get``Response()`\n\nGets the answer that the respondent submitted. For most types of question items, this returns a\n`String`.\n\nFor [CheckboxItem](/apps-script/reference/forms/checkbox-item) questions, this returns a `String[]` array containing the\nresponder's choices. The order of the strings in the array may vary.\n\nFor [GridItem](/apps-script/reference/forms/grid-item) questions, this returns a `String[]` array in which the answer at\nindex `n` corresponds to the question at row `n + 1` in the grid. If a respondent\ndid not answer a question in the grid, that answer is returned as `''`.\n\nFor [CheckboxGridItem](/apps-script/reference/forms/checkbox-grid-item) questions, this returns a `String[][]` array in which the\nanswers at row index `n` corresponds to the question at row `n + 1` in the checkbox\ngrid. If a respondent did not answer a question in the grid, that answer is returned as `''`.\n\n#### Return\n\n\n`Object` --- a `String` or `String[]` or `String[][]` of answers to the question\nitem\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`\n\n*** ** * ** ***\n\n### `get``Score()`\n\nGets the score for the respondent's submitted answer.\n\n#### Return\n\n\n`Object` --- a `Double` representing the score for the question item\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`\n\n*** ** * ** ***\n\n### `set``Feedback(feedback)`\n\nSets the feedback that should be displayed for the respondent's submitted answer.\n\nThis method does not actually save the feedback in Forms until [Form.submitGrades(responses)](/apps-script/reference/forms/form#submitGrades(FormResponse)) is called with the updated FormResponses. See `set``Score()` for an example.\n\n#### Parameters\n\n| Name | Type | Description |\n|------------|----------|-------------|\n| `feedback` | `Object` | |\n\n#### Return\n\n\n[ItemResponse](#) --- a `Item``Response` for chaining\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`\n\n*** ** * ** ***\n\n### `set``Score(score)`\n\nSets the score for the respondent's submitted answer. A null value will clear the existing\nscore.\n\nThis method does not actually save the score in Forms until [Form.submitGrades(responses)](/apps-script/reference/forms/form#submitGrades(FormResponse)) is called with the updated FormResponses.\n\n```javascript\n// For a multiple choice question with options: \"Always true\", \"Sometimes true\",\n// and \"Never\", award half credit for responses that answered \"Sometimes true\".\nconst formResponses = FormApp.getActiveForm().getResponses();\n// Go through each form response\nfor (let i = 0; i \u003c formResponses.length; i++) {\n const response = formResponses[i];\n const items = FormApp.getActiveForm().getItems();\n // Assume it's the first item\n const item = items[0];\n const itemResponse = response.getGradableResponseForItem(item);\n // Give half credit for \"Sometimes true\".\n if (itemResponse != null && itemResponse.getResponse() === 'Sometimes true') {\n const points = item.asMultipleChoiceItem().getPoints();\n itemResponse.setScore(points * 0.5);\n // This saves the grade, but does not submit to Forms yet.\n response.withItemGrade(itemResponse);\n }\n}\n// Grades are actually submitted to Forms here.\nFormApp.getActiveForm().submitGrades(formResponses);\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|---------|----------|-------------|\n| `score` | `Object` | |\n\n#### Return\n\n\n[ItemResponse](#) --- a `Item``Response` for chaining\n\n#### Authorization\n\nScripts that use this method require authorization with one or more of the following [scopes](/apps-script/concepts/scopes#setting_explicit_scopes):\n\n- `https://www.googleapis.com/auth/forms.currentonly`\n- `https://www.googleapis.com/auth/forms`"]]