当您的网站上有来自世界各地的访问者时,最好根据国际标准显示手机号码等信息。所以他们很容易理解。
我们可以使用国际公共电信编号格式以国际方式表示手机号码。此外,它以“E-164”格式表示。
我们给出了以下语法,用于以国际方式编写手机号码。
[+] [country code] [local phone number]
用户可以看到国际电话号码前面包含“+”,后面包含“国家/地区代码”,国家/地区代码后面包含本地电话号码。
这里,我们将使用正则表达式和 match() 方法,使用 JavaScript 以国际方式转换手机号码。
语法
用户可以按照以下语法将手机号码转换为国际标准格式。
let reg = /^(d{3})(d{3})(d{4})$/; let array = number.match(reg);
在上面的语法中,我们编写了正则表达式来匹配电话号码
match 方法返回所有匹配项的数组。对于有效匹配,它返回四个元素。第一个元素是整个 3 位电话号码,第二个元素是电话号码的前三位,第三个元素是电话号码的中间三位,第四个元素是有效号码的后四位电话号码。
正则表达式解释
-
^ − 这是正则表达式的开始。
-
(d{3}) – 它代表开头的三位数字。
-
(d{3}) – 代表中间的三位数字。
-
(d{4}$) – 它代表末尾的四位数字。
示例
在下面的示例中,我们添加了数字类型的 HTML 输入。用户可以输入 10 位有效的手机号码。当用户单击提交按钮时,它会执行 writeInternationalNumber() 函数。我们在函数中使用上面的正则表达式来匹配输入值并以数组格式获取匹配值。
之后,我们将数组值连接到单个字符串中,以根据国际标准写入手机号码。
<html> <body> <h3>Using the <i> Regular expression </i> to write a cell phone number in an international way in JavaScript </h3> <p>Enter phone number:</p> <input type = "number" id = "cell"> <div id = "content"></div> <button id = "btn" onclick = "writeInternationalNumber()"> Submit</button> <script> let content = document.getElementById('content'); // function to write a cell phone number in the international format function writeInternationalNumber() { let cell = document.getElementById('cell'); let number = cell.value; let reg = /^(d{3})(d{3})(d{4})$/; let array = number.match(reg); if(array == null) { content.innerHTML = "Please enter a valid phone number"; return; } let internationalNumber = '+91' + ' (' + array[1] + ') ' + array[2] + '-' + array[3]; content.innerHTML = "The converted phone number is " + internationalNumber; } </script> </body> </html>
示例
在下面的示例中,我们使用其值创建了国家/地区代码的下拉列表。用户可以选择任意国家并在输入框中写入10位数字的电话号码。当用户按下按钮时,它会执行 cellNumberWithCountryCode() 函数,该函数获取所选国家/地区代码和电话号码的值。之后,我们创建一个如上例所示的字符串来写入输入的国际手机号码。
<html> <body> <h3>Using the <i> Regular expression </i> to write a cell phone number in an international way in JavaScript </h3> <select name = "country_code" id = "codes"> <option value = "+91" selected> India (+91) </option> <option value = "+355"> Albania (+355) </option> <option value = "+1"> USA (+1) </option> <option value = "+43"> Austria (+43) </option> <option value = "+86"> China (+86) </option> <option value = "+81"> Japan (+81) </option> <option value = "+31"> Netherlands (+31) </option> <option value = "+263"> Zimbabwe (+263) </option> </select> <input type = "number" id = "cell"> <br> <div id = "content"> </div> <br> <button id = "btn" onclick = "cellNumberWithCountryCode()"> Submit</button> <script> let content = document.getElementById('content'); // function to write a cell phone number in the international format function cellNumberWithCountryCode() { let cell = document.getElementById('cell'); let number = cell.value; let reg = /^(d{3})(d{3})(d{4})$/; // get the country code from the dropdown let country_code = document.getElementById('codes').value; let array = number.match(reg); if (array == null) { content.innerHTML = "Please enter a valid phone number"; return; } let internationalNumber = country_code + ' (' + array[1] + ') ' + array[2] + '-' + array[3]; content.innerHTML = "The converted phone number is " + internationalNumber; } </script> </body> </html>
用户学会了根据国际标准排列手机号码。我们使用正则表达式来验证手机号码。如果电话号码有效,我们会在国际范围内显示该电话号码以及所选的国家/地区代码。
本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
如有侵权请发送邮件至1943759704@qq.com删除
码农资源网 » 如何使用 JavaScript 以国际方式编写手机号码?