You should always take a look at the documention
parsePhoneNumber returns …an instance of PhoneNumber class, or undefined if no phone number could be parsed…. And you can't expect that JSON.stringify(phoneNumber) will result in something that just contains a phone number.
And isPossiblePhoneNumber expects a string as parameter that is a valid phone number; the documentation states there:
This function is just a shortcut for a two-step process of "strictly" parsing a phone number and then calling
.isPossible().
So what you want to do is either:
const contact_asset = "2022032034"
const phoneNumber = libphonenumber.parsePhoneNumber(contact_asset, 'US')
if (phoneNumber) {
console.log(phoneNumber.isPossible());
}
Or
const contact_asset = "2022032034"
console.log(libphonenumber.isPossiblePhoneNumber(contact_asset, 'US'));
Answer from t.niese on Stack Overflow
» npm install libphonenumber-js
» npm install google-libphonenumber
» npm install libphonenumber-js-utils
You should always take a look at the documention
parsePhoneNumber returns …an instance of PhoneNumber class, or undefined if no phone number could be parsed…. And you can't expect that JSON.stringify(phoneNumber) will result in something that just contains a phone number.
And isPossiblePhoneNumber expects a string as parameter that is a valid phone number; the documentation states there:
This function is just a shortcut for a two-step process of "strictly" parsing a phone number and then calling
.isPossible().
So what you want to do is either:
const contact_asset = "2022032034"
const phoneNumber = libphonenumber.parsePhoneNumber(contact_asset, 'US')
if (phoneNumber) {
console.log(phoneNumber.isPossible());
}
Or
const contact_asset = "2022032034"
console.log(libphonenumber.isPossiblePhoneNumber(contact_asset, 'US'));
If I format it to international and then check if it's valid, its returning me a valid number, check if this helps.
let contact_asset = "2022032034"
const phoneNumber = libphonenumber.parsePhoneNumber(contact_asset, 'US')
const formattedPhoneNumber = phoneNumber.formatInternational()
if (phoneNumber) {
console.log(libphonenumber.isValidPhoneNumber(formattedPhoneNumber));
console.log(libphonenumber.isPossiblePhoneNumber(formattedPhoneNumber));
console.log(phoneNumber.formatNational());
}