在javascript中插入连字符

Tha*_*nos 18 javascript insert

在javascript中插入连字符的最简单方法是什么?

我有一个电话号码,例如1234567890

在前端显示时,我必须使用javascript将其显示为123-456-7890.

实现这一目标的最简单,最快捷的方法是什么?

谢谢

Jas*_*aro 51

最快的方法是使用一些正则表达式:

哪里n是多少

n.replace(/(\d{3})(\d{3})(\d{4})/, "$1-$2-$3");

示例:http://jsfiddle.net/jasongennaro/yXD7g/

var n = "1234567899";
console.log(n.replace(/(\d{3})(\d{3})(\d{4})/, "$1-$2-$3"));
Run Code Online (Sandbox Code Playgroud)

  • 7年后,仍然是最好的解决方案. (8认同)

GNi*_*i33 5

你可以使用substr-function来实现这一点,假设连字符总是插在同一个位置:

var hypString = phonestr.substr(0,3) + '-' + phonestr.substr(3, 6) + '-' + phonestr.substr(6);
Run Code Online (Sandbox Code Playgroud)


Fel*_*ing 5

鉴于这种输入,另一种方法是:

var phone = "1234567890";
phone = phone.replace(/(\d{3})(\d{3})(\d+)/, '$1-$2-$3');
Run Code Online (Sandbox Code Playgroud)

当然,如果您的输入发生更改,这将不起作用。