在javascript中使用通配符返回实际值

在javascript中使用通配符返回实际值,javascript,mixpanel,jql,Javascript,Mixpanel,Jql,我已经编写了一些javascript代码,以便可以使用MixPanel的JQL语言 下面的代码不起作用,因为*在Javascript中不是通配符。但我已经包括它,以显示我想在哪里通配符 我知道我可以使用indexOf()函数和startsWith(),但它们本质上只返回true/false。如何返回实际值 function main() { return Events({ from_date: '2017-03-01', to_date: '2017-03-31' }

我已经编写了一些javascript代码,以便可以使用MixPanel的JQL语言

下面的代码不起作用,因为*在Javascript中不是通配符。但我已经包括它,以显示我想在哪里通配符

我知道我可以使用indexOf()函数和startsWith(),但它们本质上只返回true/false。如何返回实际值

function main() {
  return Events({
    from_date: '2017-03-01',
    to_date:   '2017-03-31'
  })
      .filter(function(event) { return event.name == "PartsViewed" })
      .filter(function(event){
        return event.properties.PartName =="LTC3784*" && event.properties.PartName == "1EDI60N*";
    })
  .groupBy(["properties.manufacturer"], mixpanel.reducer.count());
}

如果要
返回
而不是
过滤
,则需要函数
.map
。 map函数返回您定义的内容,而filter只过滤数组而不修改输出

array
.filter(function(event){
    let name = event.properties.PartName;
    return name.startsWith("LTC3784") || name.startsWith("1EDI60N");
})
.map(function(event) {
    return event.properties.PartName;
})
因此,首先要使用现有功能进行适当过滤。 比你的