替换“。”三元运算符中的''

时间:2019-08-28 10:03:09

标签: javascript html

我要检查以“。”开头的字符串。例如.net并使用javascript中的三元运算符将其替换为net。我想将以下代码替换为三元运算符

arr = ".net"
var val = arr.startsWith('.');

if(val == true)
{
    arr = arr.replace('.','');
} 
else
{
    arr;
}

尝试为 arr = arr.startsWith('.') ? arr.replace('.','') : arr;

3 个答案:

答案 0 :(得分:5)

var arr = '.net'
arr = arr.startsWith('.')
  ? arr.slice(1)
  : arr

您可能不想替换.,因为字符串的其他地方可能有..slice只会删除第一个字符并返回其余字符。

答案 1 :(得分:5)

您可以为此使用正则表达式。

想法:

  • 创建一个模式,以检查以.开头的字符串
  • 使用它替换为空白字符串。
  • 如果字符串不是以.开头,则不会替换。

function replace(str) {
  return str.replace(/^\./, '')
}

console.log(replace('.net'))
console.log(replace('asp.net'))

答案 2 :(得分:0)

function removeDot(arr) {
  return arr.startsWith('.') ? arr.slice(1) : arr;
}

您可以添加类似removeDot的函数,使用所需的任何字符串调用它,并获得不带点的输出。