Если вы используете нод или NPM в целом, вам следует взглянуть на подробный пакет данных страны .
Поскольку вы пытаетесь получить страну по номеру телефона, вы сталкиваетесь с двумя основными препятствиями:
Парсинг номера телефона для получения кода страны.
Обработка ситуаций, когда код страны может принадлежать более чем одной стране. например. Код страны «+1» принадлежит США и Канаде.
Однако пакет Country Data позволит вам сделать что-то вроде этого:
var CountryDataLookup = require('country-data').lookup;
lookup.countries({countryCallingCodes: '+1'})
А это возвращающиеся объекты:
[ { alpha2: 'CA',
alpha3: 'CAN',
countryCallingCodes: [ '+1' ],
currencies: [ 'CAD' ],
ioc: 'CAN',
languages: [ 'eng', 'fra' ],
name: 'Canada',
status: 'assigned' },
{ alpha2: 'UM',
alpha3: 'UMI',
countryCallingCodes: [ '+1' ],
currencies: [ 'USD' ],
ioc: '',
languages: [ 'eng' ],
name: 'United States Minor Outlying Islands',
status: 'assigned' },
{ alpha2: 'US',
alpha3: 'USA',
countryCallingCodes: [ '+1' ],
currencies: [ 'USD' ],
ioc: 'USA',
languages: [ 'eng' ],
name: 'United States',
status: 'assigned' } ]