我在google电子表格中编写了一个脚本,我有一个值数组,但它包含括号[],我只需要在没有括号的变量中读取值。
在下面的代码测试中得到的值为["无论什么"],我需要测试等于"无论什么"没有括号
function Results() {
var activeSheet = SpreadsheetApp.getActiveSpreadsheet();
var pred = activeSheet.getSheetByName("Copy of Predictions");
var real = activeSheet.getSheetByName("16 Results");
var realRes = real.getRange("B7:B61");
var realVal = realRes.getValues();
var cell, cellValue, row, col, predVal, predRes, test;
for(col=2;col<16;col++){
predRes = pred.getRange(7, col, realVal.length);
predVal = predRes.getValues();
for(row=0;row<predVal.length;row++){
test = predVal[row];
if(predVal[row] == ""){
continue;
}else if(typeof test === 'string'){
continue;
}else{
if((predVal[row][0] == realVal[row][0]) && (predVal[row+1][0] == realVal[row+1][0])){
cell = pred.getRange(col, 3);
cellValue = cell.getValue();
cell.setValue(cellValue + 15);
}else{
if(((predVal[row][0] - predVal[row+1][0]) < 0) && ((realVal[row][0] - realVal[row+1][0]) < 0)){
cell = pred.getRange('B3');
cellValue = cell.getValue();
cell.setValue(cellValue + 5);
}else if(((predVal[row][0] - predVal[row+1][0]) > 0) && ((realVal[row][0] - realVal[row+1][0]) > 0)){
cell = pred.getRange('B3');
cellValue = cell.getValue();
cell.setValue(cellValue + 5);
}else if(((predVal[row][0] - predVal[row+1][0]) == 0) && ((realVal[row][0] - realVal[row+1][0]) == 0)){
cell = pred.getRange('B3');
cellValue = cell.getValue();
cell.setValue(cellValue + 5);
}
}
row++;
}
}
}
};
答案 0 :(得分:1)
你看到方括号的原因是getValues()返回一个数组数组,所以你看到一个数组中有一个值。
test = predVal[row][0];
将获得“行”中第一个单元格的值。