Javascript中indexOf的问题
我对Javascript中的indexOf有问题。从电子表格中使用.getValues()获取字符串时,IndexOf似乎无法找到字符串 例如,下面的函数工作正常Javascript中indexOf的问题,javascript,indexof,Javascript,Indexof,我对Javascript中的indexOf有问题。从电子表格中使用.getValues()获取字符串时,IndexOf似乎无法找到字符串 例如,下面的函数工作正常 function Narek() { var array = ["Armine", "Narek", "Suren"] var ggg = array.indexOf("Armine"); } 但是这个函数从googlesheets中获取相同的名称,返回-1 function Narek() { var ss = Sprea
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);
}
任何人都可以提供帮助。而范围#getValue()返回左上角的单元格内容(在本例中为A49中的值),范围#getValue()返回整个范围(即A45:A47)的单元格内容的二维数组。每个内部数组都保存行的值
因此,可能更类似于:
var values = [["Armine"], ["Narek"], ["Suren"]];
这可以转化为您对平面阵列的期望
var array = values.map(function(row) { return row[0]; });
// ["Armine", "Narek", "Suren"]
请提供输入。您可以在每行后面放置console.log(),以测试得到的值。您可能有一些空值或未定义的值。@NaveenChandraTiwari。谢谢我确实在每行后面放了Logger.logs,它正确地带来了数组和pickedHLM,因此没有未定义的项。@DanielA.White什么样的输入?我的全部想法是从数组中选择唯一的人名。似乎我无法在这里复制整个代码(抱歉,Stackoverflow和编码新手!)。欢迎@Sati,您也可以“接受”此答案,以表明解决方案令人满意。