2016-12-16 67 views
0

谷歌工作表中使用谷歌脚本。我试图使用在其中有邮政编码来查看某个字段arrary,如果该字段匹配数组中的值之一,否则将继续进行我会继续。我似乎无法弄清楚。我遇到了.indexOf函数的问题。使用任何数组

for (var i = 0; i < data.length; ++i) { 

    var tzip = new Array("02703", "02763", "02019", "01504", "02712", "02720"); 

    var dzip = new Array("02721", "02722", "02723", "02724", "02035", "02038"); 

    var row = data[i]; 

    var emailAddress = row[18]; // First column 

    var message = "Hello" 

    var emailSent = row[19]; // Third column  
    var leadsent = row[20]; 
    if (emailAddress == "Oil Sales" && tzip.indexOf(row[9] != 1) && emailSent != LEAD_SENT && leadsent != LEAD_COPIED) { 

    } 
} 
+2

看起来你在这里放错了一个圆括号:tzip.indexOf(row [9]!= 1) –

+0

谢谢你的建议,但是这并不能解决我的问题 – user3829486

+0

它的确如此。请重新阅读。 – kolosy

回答

1

你有tzip.indexOf(row[9] != 1)其中row[9] != 1将评估为布尔值。这意味着您将搜索tzip作为布尔值的索引。

如果更改到

tzip.indexOf(row[9]) != 1 

那么row[9]值可以在任何指数tzip除了指数1

我想你的意思是

tzip.indexOf(row[9]) != -1 

因为indexOf函数返回如果值row[9]不包含在tzip指数-1。

+0

如果单元格中的值为02721而不是tzip,它仍然是脚本,我试图让它只在行[9]中的值等于数组中的内容tzip – user3829486

+0

请参阅我的编辑。 –

+0

我做了你对if(emailAddress ==“Oil Sales”&& tzip.indexOf(row [9])!!= -1 && emailSent!= LEAD_SENT && leadsent!= LEAD_COPIED)的建议编辑。现在没有做任何事情了。我有一行在ztip中找到了一个值,一行没有,现在也没有做任何事情。 – user3829486