Javascript 无法将数组转换为对象[]错误

Javascript 无法将数组转换为对象[]错误,javascript,google-sheets,Javascript,Google Sheets,我试图在GoogleDoc中创建一个简单的脚本,但当我运行它时,它会在第15行停止,错误如标题所示。只要我去掉那条线就行了。你能帮我吗 功能影响者更新{ var sheet1=SpreadsheetApp.getActiveSpreadsheet.getSheetByName'Influencer'; var dzis=sheet1.getRange'O1.getValue;//今天日期 var lista=sheet1.getRange'Q2:Q'.getValues;//值列表 var l

我试图在GoogleDoc中创建一个简单的脚本,但当我运行它时,它会在第15行停止,错误如标题所示。只要我去掉那条线就行了。你能帮我吗

功能影响者更新{ var sheet1=SpreadsheetApp.getActiveSpreadsheet.getSheetByName'Influencer'; var dzis=sheet1.getRange'O1.getValue;//今天日期 var lista=sheet1.getRange'Q2:Q'.getValues;//值列表 var lista_st=sheet1.getRange'D2:D'.getValues;//要更新的值列表 var daty=sheet1.getRange'O2:O'.getValues;//上次更新值的日期列表 因为我在lista{ 如果lista[i]>0{ lista_st[i]=lista[i] daty[i]=dzis } } 表1.getRange'D2:D'。SetValuesList; 表1.getRange'O2:O'。设置值日期; msgBox'daend'; } 我相信setValues和getValues总是使用2d数组。当您执行daty[i]=dzis时,它会将daty转换为1d数组。因此,它会显示错误消息无法将数组转换为对象[]。如果你换线

daty[i]=dzis

daty[i][0]=dzis 或 daty[i]=[dzis]


应该可以解决这个问题。

lista是数组吗?是的,只有'dzis'不是数组。…在语法上是用于对象的。i是键,lista[i]将获取lista对象的属性值。因为lista是一个数组,而不是一个对象,所以需要使用数组迭代器,比如for…of,map,forEach等等。什么是“dzis”?如果将lista中的fori更改为lista的var i,那么代码应该可以工作。。