Javascript错误,并且没有关于它是什么的线索';意思
我正在为谷歌电子表格创建一个小脚本,将数字移动到一列,字符串移动到另一列。应该是相当基本的,但我只是在玩JS,自然我遇到了一些对我来说毫无意义的东西 这是密码Javascript错误,并且没有关于它是什么的线索';意思,javascript,google-sheets,google-spreadsheet-api,Javascript,Google Sheets,Google Spreadsheet Api,我正在为谷歌电子表格创建一个小脚本,将数字移动到一列,字符串移动到另一列。应该是相当基本的,但我只是在玩JS,自然我遇到了一些对我来说毫无意义的东西 这是密码 function moveData() { var sheet = SpreadsheetApp.getActiveSheet(); var dataToMove = sheet.getRange("A1:A5003"); var lastRow = sheet.getLastRow(); for (v
function moveData() {
var sheet = SpreadsheetApp.getActiveSheet();
var dataToMove = sheet.getRange("A1:A5003");
var lastRow = sheet.getLastRow();
for (var i = 0; i <= lastRow - 1; i++)
{
var unparsedValue = dataToMove[i];
if(unparsedValue != "" && typeof unparsedValue === "number" && !isNaN(unparsedValue))
{
var parsedValue = unparsedValue;
Logger.log(parsedValue);
}
}
}
函数moveData(){
var sheet=SpreadsheetApp.getActiveSheet();
var dataToMove=sheet.getRange(“A1:A5003”);
var lastRow=sheet.getLastRow();
对于(var i=0;i很明显,sheet.getRange(“A1:A5003”)
返回$Proxy810
实例,因为循环中的第一个值是0
这一行的代码
dataToMove[i];
// is the same as
dataToMove[0];
// is the same as
dataToMove.0
而且,$Proxy810
没有这样的属性
我假设您不需要使用括号循环,而是使用某种方法,尽管我不熟悉电子表格API,但您需要查找类似于dataToMove.getRow(I)
编辑:作为google show上的第一个脚本示例,您需要使用以下代码:
function readRows() {
var sheet = SpreadsheetApp.getActiveSheet();
var rows = sheet.getDataRange();
var numRows = rows.getNumRows();
var values = rows.getValues();
for (var i = 0; i <= numRows - 1; i++) {
var row = values[i];
Logger.log(row);
}
};
函数readRows(){
var sheet=SpreadsheetApp.getActiveSheet();
var rows=sheet.getDataRange();
var numRows=rows.getNumRows();
var values=rows.getValues();
对于(var i=0;i哦,好吧,这实际上是有道理的。谢谢你为我澄清这一点。
function moveData() {
var sheet = SpreadsheetApp.getActiveSheet();
var dataToMove = sheet.getRange("A1:A5003");
var numRows = dataToMove.getNumRows();
var values = dataToMove.getValues();
for (var i = 0; i <= numRows - 1; i++)
{
var unparsedValue = values[i];
if(unparsedValue != "" && typeof unparsedValue === "number" && !isNaN(unparsedValue))
{
var parsedValue = unparsedValue;
Logger.log(parsedValue);
}
}
}