我们在哪里可以找到未记录的Google对象属性

时间:2018-09-09 20:04:11

标签: google-apps-script attributes google-apps-script-editor

我知道自动完成有时可以帮助您找到Google对象的未引用方法,例如 Sheets API v4 ,但是如何找到属性。

电子表格示例:

function onEdit(e)
{
  Logger.log(e.range.columnStart)
  //returns the start column of the range I've edited
  Logger.log(SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getDataRange().columnStart)
  //Weird result, even if my sheet is populated with values it returns 'undefined'
}

在此示例中,您看到了属性columnStart,但我在文档中找不到它,但是似乎很多人都在使用它。

e.rangegetDataRange都可能返回主题,但有趣的是,它返回一个Range对象,但是似乎其中一个具有填充的columnStart属性不要。

1 个答案:

答案 0 :(得分:3)

  • 您要从e.range检索onEdit(e)的对象。

如果我的理解正确,那么这个答案如何?不幸的是,详细信息属性在“事件对象”文档中看不到。因此,例如,它使用JSON.stringify()从事件对象中确认每个属性。

示例脚本:

function onEdit(e) {
  Logger.log(JSON.stringify(e)) // or console.log(JSON.stringify(e))
}

结果:

{
  "authMode": {},
  "range": {
    "columnStart": 1,
    "rowStart": 1,
    "rowEnd": 1,
    "columnEnd": 1
  },
  "source": {},
  "user": {
    "nickname": "### name ###",
    "email": "### email ###"
  },
  "value": "sample"
}

注意:

  • 如果运行Logger.log(JSON.stringify(e.range)),将检索{"columnStart":1,"rowStart":1,"rowEnd":1,"columnEnd":1}。在这种情况下,将编辑“ A1”。

参考: