jQuery查找并替换为键值数组

jQuery查找并替换为键值数组,jquery,arrays,replace,Jquery,Arrays,Replace,找到查找和替换的此代码 var f = ['Rd','St','Ave']; var r = ['Road','Street','Avenue']; var re = $.map(f, function(v,i) { return new RegExp('\\b' + v + '\\b', 'g'); }); jQuery('#colCenterAddress').val(function(i,val) { $.each(f,function(i,v) { val = val.rep

找到查找和替换的此代码

var f = ['Rd','St','Ave'];
var r = ['Road','Street','Avenue'];

var re = $.map(f, function(v,i) {
return new RegExp('\\b' + v + '\\b', 'g');
});

jQuery('#colCenterAddress').val(function(i,val) {
$.each(f,function(i,v) {
    val = val.replace(re[i],r[i]);
});
return val;
});
幸亏

这真的很棒,但我想重构以使用键值数组

var fr ={ 
 "Rd" : "road",
 "St" : "Street",
 "Ave" : "Avenue",
 };
对于jQuery来说,任何帮助都是非常好的

试试看

var re = $.map(fr, function (v, k) {
    return {
        regex: new RegExp('\\b' + k + '\\b', 'g'),
        value: v
    };
});
jQuery('#colCenterAddress').val(function (i, val) {
    $.each(re, function (i, obj) {
        val = val.replace(obj.regex, obj.value);
    });
    return val;
});
演示: