我要从字符串中删除所有空格,并用+61替换0。我正在检查前三个字符是否为+61,然后将其替换为0

下面的代码工作正常

 function updateMobileNumber() {
    var updatedMobileValue = visibleField.val().replace(/\s+/g, "");
    if (updatedMobileValue.charAt(0) === '+'&&
        updatedMobileValue.charAt(1) === '6'&&
        updatedMobileValue.charAt(2) === '1' ){
           updatedMobileValue = updatedMobileValue.replace('+61', '0');
     }
    console.log(updatedMobileValue);
 }


有什么有效的方法可以做到这一点。

任何建议,将不胜感激。

提前致谢

最佳答案

您已经在使用.replace删除空格,请再次尝试使用.replace将字符串开头的+61替换为0

function updateMobileNumber() {
  var updatedMobileValue = visibleField.val()
    .replace(/\s+/g, "")
    .replace(/^\+61/, '0');
  console.log(updatedMobileValue);
}


正则表达式中的^表示位置在字符串的开头,并且需要在\之前的+,因为+是正则表达式中具有特殊含义的字符,因此指示文字加号,您必须先将其转义。

关于javascript - 用0替换前三个字符,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52658069/

10-13 00:16