gpt4 book ai didi

javascript - 如何在同时支持window和linux的javascript数组下转义 ':'、 ","和 '()'?

转载 作者:行者123 更新时间:2023-12-03 12:02:16 25 4
gpt4 key购买 nike

我有一个 JavaScript 数组,其中的特殊字符正在从后端数据库中填充。我想在前端转义这些字符以形成查询字符串以正确获取结果。我的数组如下所示:

var a = new Array();
a[0] = "abc,def";
a[1] = "abc:def";
a[2] = "abc(def)";

我的查询字符串格式如下所示:

http://localhost:8080/search/?Ar=AND(OR(category1:abc,def),OR(category2:abc:def),OR(category3:abc(def)));

我的查询字符串参数由“:”字符分隔,但我的数据本身具有“:”字符,导致我的查询无法获取结果。我尝试了encodeURIComponent()内置函数,但它在linux box中失败。转义特殊字符也应该支持window和linux。有什么帮助吗?

最佳答案

我不确定我是否理解你的问题。但如果你想从数组中转义一些字符,你可以这样做。

var a = new Array();
a[0] = "abc,def";
a[1] = "abc:def";
a[2] = "abc(def)";

var excpList = [',',':','(', ')'];

var res = a.map(function(item,index,array){
return item.split('').filter(function(item,index,array){
if(excp.indexOf(item) < 0){
return item;
}
}).join('');
});

res --> ["abcdef", "abcdef", "abcdef"]

DEMO

关于javascript - 如何在同时支持window和linux的javascript数组下转义 ':'、 ","和 '()'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25357971/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com