Javascript中indexOf的问题

时间:2017-01-16 13:18:23

标签: javascript indexof

我在Javascript中遇到indexOf的问题。当使用电子表格中的.getValues()获取字符串时,似乎IndexOf无法找到字符串。

例如,以下功能正常。

function Narek() {

var array = ["Armine", "Narek", "Suren"]

var ggg = array.indexOf("Armine");

} 

但是这个从googlesheets获得相同名称的函数返回-1。

function Narek() {
var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("HL rota");
var array = ss.getRange(45,1,3,1).getValues();

var pickedHLM = ss.getRange(49,1,1,1).getValue();
var ggg = array.indexOf(pickedHLM);

Logger.log(pickedHLM)
Logger.log(ggg);
}

任何人都可以提供帮助吗?

1 个答案:

答案 0 :(得分:0)

Range#getValue()返回左上角的单元格内容(在本例中是A49中的值)时, #getValues()会返回一个二维数组整个范围的细胞含量(即A45:A47)。每个内部数组都包含行的值。

所以或许更类似于:

var values = [["Armine"], ["Narek"], ["Suren"]];

这可以转化为您对扁平阵列的期望。

var array = values.map(function(row) { return row[0]; });
// ["Armine", "Narek", "Suren"]