如何在Javascript中实现基于正则表达式的条件匹配?
我有一个地图,希望每次单击要素属性时,它都能做一些事情。但是,条件是我单击的区域必须与JS变量的对象属性名称的一部分匹配 实际上,我们有: 功能如何在Javascript中实现基于正则表达式的条件匹配?,javascript,regex,leaflet,Javascript,Regex,Leaflet,我有一个地图,希望每次单击要素属性时,它都能做一些事情。但是,条件是我单击的区域必须与JS变量的对象属性名称的一部分匹配 实际上,我们有: 功能 ProcessiJSON.forEach(function(arrayItem) { if (e.target.feature.properties.NOME_COM.toUpperCase().match(/BONDENO/)) { $('.lead').html('ciaoooooo' + arrayItem.AN
ProcessiJSON.forEach(function(arrayItem) {
if (e.target.feature.properties.NOME_COM.toUpperCase().match(/BONDENO/)) {
$('.lead').html('ciaoooooo' + arrayItem.ANNO_DI_AVVIO);
}
}
变量
var ProcessiJSON =
[
{
"": 0,
"ANNO_DI_AVVIO": 2010,
"PROCESSI_BONDENO": "5",
"PROCESSI_CAMPOSANTO": "",
"PROCESSI_CAVEZZO": "",
"PROCESSI_CENTO": "",
"PROCESSI_CONCORDIA_SULLA_SECCHIA": "",
"PROCESSI_CREVALCORE": "",
"PROCESSI_FINALE_EMILIA": "",
"PROCESSI_MEDOLLA": "",
"PROCESSI_MIRABELLO": "",
"PROCESSI_MIRANDOLA": "",
"PROCESSI_NOVI_DI_MODENA": "",
"PROCESSI_PIEVE_DI_CENTO": 1,
"PROCESSI_REGGIOLO": "",
"PROCESSI_SAN_FELICE_SUL_PANARO": ""} + many others
例如,如果我点击区域“BONDENO”,我可以得到“PROCESSI_BONDENO”的编号。名称的一部分匹配,另一部分不匹配。我尝试了str.match,但到目前为止没有结果。我怎么做呢
谢谢你是说这样的事吗
const ProcessiJSON=[
{
"": 0,
“安诺·迪奥·阿维奥”:2010年,
“过程”——“5”,
“过程”:“,
“过程”:“,
“进程”:“进程”,
“协商程序”:“协商程序”,
“过程凭证”:“,
“最终过程”:“,
“过程”:“,
“过程”:“,
“过程”:“,
“新流程”:“,
“中心流程”:1,
“过程”:“过程”,
“圣菲利斯南帕纳罗进程”:
}]
常量findValue=(键)=>{
key=key.toUpperCase();
返回Object.keys(ProcessiJSON[0]).filter(item=>item.indexOf(key)!=-1)
}
让我们单击“Bondeno”;
让匹配=查找值(单击)
match.forEach(key=>$(“.lead”).append('ciao fatto'+key+':',ProcessiJSON[0][key]+“
”)
单击“Mira”;
匹配=查找值(单击)
match.forEach(key=>$(“.lead”).append('ciao fatto'+key+':',ProcessiJSON[0][key]+“
”)
您的示例非常不清楚。1:e.target.feature.properties.NOME_COM是什么。为什么只将其与BONDENO
匹配,而显示ANNO_DI_AVVIO
?。匹配(/\w*?BONDENO\w*/g)
应该有效。1)区域名称,在本例中为BONDENO
;2) ANNO_DI_AVVIO
是另一件事!但是我可以将JQuery与之混合使用吗?像这样:match.forEach(key=>$('.lead').html('ciao fatto'+ProcessiJSON[0][key])
,因为当我把它放在代码中时它不起作用