我有一个简单的数组。
array('p','(',')','?');
根据数组值我需要在js中转义字符串,我该怎么做?
例如字符串是= 'hey?'
,在转义数组中我有'?'
答案 0 :(得分:3)
这样的事情应该有效:
//for old browsers...
Array.prototype.indexOf = Array.prototype.indexOf || function(o) {
for(var k = 0; k < this.length; ++k)
if(this[k] === o) return k;
return -1;
};
var escapes = ['p', '(', ')', '?'];
var array = 'hey?'.split('');
for(var i = 0; i < array.length; ++i) {
var escapeIndex = escapes.indexOf(array[i]);
if(escapeIndex > -1) {
array[i] = '\\' + array[i];
}
}
var newString = array.join('');
答案 1 :(得分:2)
不确定这是否是最有效的方法,但您可以尝试这样的事情 -
var text = "= 'hey?'";
var a = ['p','(',')','?'];
for (i=0;i<a.length;i++) {
text = text.replace(a[i],'\\' + a[i])
}
alert(text);
答案 2 :(得分:0)
试试这个
for(var i=0;i<arr.length;i++){
var ind = strValue.IndexOf(arr[i])
if(ind>-1)
{
strValue.splice(ind,1)
}
}