DGi*_*bbs 0 javascript string jquery replace
我正在尝试£$€,.从jQuery/Javascript中的字符串中删除给定字符集的所有实例.我正在使用替换功能,但这只会删除角色的单个实例,而不是全部.
例如,考虑字符串:
1,500,00.00.$djdjd£10€10
Run Code Online (Sandbox Code Playgroud)
我回来了:
1500,0000.djdjd1010
Run Code Online (Sandbox Code Playgroud)
如您所见,它只删除每个字符的单个实例.£, $并且€很好,因为字符串中只有一个.
这是我到目前为止:
function validatePriceRange(value, min, max) {
var replacements = ["£", "$", "€", ",", "."];
$.each(replacements, function (index, item) {
value = value.replace(item, "");
});
var value = parseInt(value, 10);
return value >= min && value <= max;
}
Run Code Online (Sandbox Code Playgroud)
谁能发现我做错了什么?
replace使用字符串作为第一个参数调用只进行一次替换,而使用带有flag的正则表达式g替换所有出现.
使用正则表达式,您还可以避免在数组上循环并在一次传递中执行:
value = value.replace(/£|\$|€|,|\./g,'');
Run Code Online (Sandbox Code Playgroud)