在JavaScript/Lodash中将字符串格式化为电话号码

在JavaScript/Lodash中将字符串格式化为电话号码,javascript,lodash,Javascript,Lodash,有以下电话号码字符串:“+79021234567”。如何将此字符串格式化为“+7902123-45-67”?我可以用substring手动完成,但可能有更优雅的方式吗?提前谢谢 str.substring(开始,结束)似乎是最适用的方式,尽管它看起来不是很优雅: > str = '+79021234567' > console.log([[str.substring(0, 2), str.substring(2, 5), str.substring(5, 8)].join(" "),

有以下电话号码字符串:“+79021234567”。如何将此字符串格式化为“+7902123-45-67”?我可以用substring手动完成,但可能有更优雅的方式吗?提前谢谢

str.substring(开始,结束)
似乎是最适用的方式,尽管它看起来不是很优雅:

> str = '+79021234567'
> console.log([[str.substring(0, 2), str.substring(2, 5), str.substring(5, 8)].join(" "), str.substring(8, 10), str.substring(10)].join("-"));
+7 902 123-45-67

可能的复制品比什么更优雅?你没有给我们任何参考点,有很多很多的方法来操作Strings,但是使用Strings似乎是一种方法。。。