Javascript.替换欧元符号(特殊字符)

Javascript .replace on Euro symbol (special characters)

本文关键字:特殊字符 符号 替换 Javascript      更新时间:2023-09-26

我正在尝试使用.replace方法将欧元符号替换为英镑符号。不幸的是,它在&euro'u20AC以及转义版本中失败了。

是我遗漏了什么,还是替换无法处理特殊字符?

function updateCurrency(elem){
    if(elem.value === 'sterling'){
        window.currency= '£';
        minValue= document.getElementById('min').value;
        minValue= minValue.replace('/€', '£');
        console.log(minValue)
        maxValue= document.getElementById('max').value.replace(''u20AC', '£');
    } else {
        window.currency= ''u20AC';
        minValue= document.getElementById('min').value.replace('£', ''u20AC');
        maxValue= document.getElementById('max').value.replace('£', ''u20AC');
    }
}

代码笔:http://codepen.io/ambrosedheffernan/pen/PqOmMG

只需将updateCurrency函数更改为更简单的函数,您就会看到£被替换(在货币之间切换时):

function updateCurrency(elem){
    if(elem.value === 'sterling'){
        var newCurrency = '£';
        var oldCurrency = '€';
    }
    else {
        var newCurrency = '€'; 
        var oldCurrency = '£';         
    }
    var maxValue = document.getElementById('max').value;
    maxValue = maxValue.replace(oldCurrency, newCurrency)
    document.getElementById('max').value = maxValue;
    var minValue = document.getElementById('min').value;
    minValue = minValue.replace(oldCurrency, newCurrency)
    document.getElementById('min').value = minValue;   
}