表格:indexOf找不到子字符串

时间:2019-03-08 16:59:26

标签: javascript google-apps-script

enter image description here

正在使用我拥有的应用脚本:

var conversations = row['CONVERSATION'].split('|');
var replies = conversations.map(function(message) { //ONLY CHECKED ROWS.
  var m = message.toString();
  return m.indexOf('R:')==true;
});  

    Logger.log(conversations);
    Logger.log(replies);

当我查看日志时:

[19-03-08 11:51:12:892 EST] [R: test3 ,  R: test3 ,  tx]
[19-03-08 11:51:12:893 EST] [false, true, false]

为什么replies数组中的第一个元素为false。不是吗?

1 个答案:

答案 0 :(得分:2)

  

为什么replies数组中的第一个元素为false。不是吗   是真的吗?

因此,如果indexOf匹配第一个元素,则您获得的索引为0,并且您的条件是检查true的值,但是0不在,因此返回的是假。

如果您匹配的索引为0

,此操作将失败
m.indexOf('R:') === true 

更好地检查

m.indexOf('R:') !== -1

参考:String.prototype.indexOf