我正在使用libphonenumber库来获取node.js
在Google demo for this library中,如果输入的电话号码无效,则不会填充国际/地区的格式。但是当我尝试通过node.js库解析一个无效的数字时,它会创建intl字符串表示,而不管该数字是否有效。
我需要确保只转换有效数字和invalids才能返回null。
举个例子,考虑一下:
var phoneProto = phoneUtil.parse("12213", "IN");
phoneProto.intl = phoneUtil.format(phoneProto, 1);
sails.log.debug(phoneProto.intl);
输出
+91 12213
如何确保只返回有效的?
答案 0 :(得分:1)
根据图书馆的文件,
parse(java.lang.String numberToParse, java.lang.String defaultRegion)
解析字符串并以原始缓冲区格式返回。如果数字不被认为是可能的数字,则此方法将抛出NumberParseException。 请注意,不会执行验证数字是否实际上是特定区域的有效数字。这可以使用isValidNumber(PhoneNumber)单独完成。