文本长度超过3个字符串而不是用另一个字符串替换其余字符串

问题描述:

如何替换字符串的其余部分超过3个字符swith另一个字符?文本长度超过3个字符串而不是用另一个字符串替换其余字符串

例如:

var str = "John Doe"; 

我想输出与

Johxxxxx 
+1

移除jquery的,没有必要的jquery,这对DOM操作,虽然这是字符串操作 –

使用String#replace方法有一个回调函数

var str = "John Doe"; 
 

 
console.log(
 
    str.replace(/^(.{3})(.+)$/, function(_, m1, m2) { 
 
    return m1 + // first 3 characters 
 
     new Array(m2.length + 1).join('x'); // generate string with length of remaining character 
 
    }) 
 
)


或使用String#slice方法。

var str = "John Doe"; 
 

 
console.log(
 
    str.slice(0, 3) + // get first three character 
 
    new Array(str.length > 2 ? str.length - 2 : 0).join('x') // generate string with remaining length 
 
)

+0

二给出了一个错误如果str

+0

@ freedomn-M:更新,感谢指出:) –

+0

如何返回值str? –