Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Semrush - keyword research tool

Create your online store today with Shopify

Turn ChatGPT, Claude, Gemini, And CoPilot Into Your Personal Assistant, Business Coach, Content Creator, And More

AFFILIATE MARKETING Your all-in-one performance engine Manage affiliates, creators, and customer referrals in one unified platform—turning every partnership into measurable growth

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Disclosure: My content contains affiliate links.

43,563 questions

56,778 answers

573 users

How to list all ISO countries (alpha-2 country code - country name) in TypeScript

1 Answer

0 votes
// Type for a single country entry
interface CountryEntry {
    code: string;
    name: string;
}

// Function that returns all ISO alpha‑2 countries with English names
function getAllCountries(): CountryEntry[] {
    const displayNames = new Intl.DisplayNames(['en'], { type: 'region' });

    const countries: CountryEntry[] = [];

    // Generate all AA–ZZ combinations (676 total)
    for (let a = 65; a <= 90; a++) {
        for (let b = 65; b <= 90; b++) {
            const code = String.fromCharCode(a) + String.fromCharCode(b);
            const name = displayNames.of(code);

            // If the name is valid and not equal to the code, it's a real country
            if (name && name !== code) {
                countries.push({ code, name });
            }
        }
    }

    return countries.sort((a, b) => a.name.localeCompare(b.name));
}

// usage
const countries: CountryEntry[] = getAllCountries();

countries.forEach(c => {
    console.log(`${c.code}: ${c.name}`);
});



/*
run

AF: Afghanistan 
AX: Åland Islands 
AL: Albania 
DZ: Algeria 
AS: American Samoa 
AD: Andorra 
AO: Angola 
AI: Anguilla 
AQ: Antarctica 
AG: Antigua & Barbuda 
AR: Argentina 
AM: Armenia 
AW: Aruba 
AC: Ascension Island 
AU: Australia 
AT: Austria 
AZ: Azerbaijan 
BS: Bahamas 
BH: Bahrain 
BD: Bangladesh 
BB: Barbados 
BY: Belarus 
BE: Belgium 
BZ: Belize 
BJ: Benin 
DY: Benin 
BM: Bermuda 
BT: Bhutan 
BO: Bolivia 
BQ: Bonaire, Sint Eustatius and Saba 
BA: Bosnia & Herzegovina 
BW: Botswana 
BV: Bouvet Island 
BR: Brazil 
IO: British Indian Ocean Territory 
VG: British Virgin Islands 
BN: Brunei 
BG: Bulgaria 
BF: Burkina Faso 
HV: Burkina Faso 
BI: Burundi 
CV: Cabo Verde 
KH: Cambodia 
CM: Cameroon 
CA: Canada 
KY: Cayman Islands 
CF: Central African Republic 
EA: Ceuta and Melilla 
TD: Chad 
CL: Chile 
CN: China 
CX: Christmas Island 
CP: Clipperton Island 
CC: Cocos (Keeling) Islands 
CO: Colombia 
KM: Comoros 
CG: Congo 
CD: Congo (DRC) 
ZR: Congo (DRC) 
CK: Cook Islands 
CR: Costa Rica 
CI: Côte d’Ivoire 
HR: Croatia 
CU: Cuba 
AN: Curaçao 
CW: Curaçao 
CY: Cyprus 
CZ: Czechia 
DK: Denmark 
DJ: Djibouti 
DM: Dominica 
DO: Dominican Republic 
EC: Ecuador 
EG: Egypt 
SV: El Salvador 
GQ: Equatorial Guinea 
ER: Eritrea 
EE: Estonia 
SZ: Eswatini 
ET: Ethiopia 
EU: European Union 
EZ: Eurozone 
FK: Falkland Islands 
FO: Faroe Islands 
FJ: Fiji 
FI: Finland 
FR: France 
FX: France 
GF: French Guiana 
PF: French Polynesia 
TF: French Southern Territories 
GA: Gabon 
GM: Gambia 
GE: Georgia 
DD: Germany 
DE: Germany 
GH: Ghana 
GI: Gibraltar 
GR: Greece 
GL: Greenland 
GD: Grenada 
GP: Guadeloupe 
GU: Guam 
GT: Guatemala 
GG: Guernsey 
GN: Guinea 
GW: Guinea-Bissau 
GY: Guyana 
HT: Haiti 
HM: Heard & McDonald Islands 
HN: Honduras 
HK: Hong Kong SAR 
HU: Hungary 
IS: Iceland 
IN: India 
ID: Indonesia 
IR: Iran 
IQ: Iraq 
IE: Ireland 
IM: Isle of Man 
IL: Israel 
IT: Italy 
JM: Jamaica 
JP: Japan 
JE: Jersey 
JO: Jordan 
KZ: Kazakhstan 
KE: Kenya 
KI: Kiribati 
KR: Korea 
XK: Kosovo 
KW: Kuwait 
KG: Kyrgyzstan 
LA: Laos 
LV: Latvia 
LB: Lebanon 
LS: Lesotho 
LR: Liberia 
LY: Libya 
LI: Liechtenstein 
LT: Lithuania 
LU: Luxembourg 
MO: Macao SAR 
MG: Madagascar 
MW: Malawi 
MY: Malaysia 
MV: Maldives 
ML: Mali 
MT: Malta 
MH: Marshall Islands 
MQ: Martinique 
MR: Mauritania 
MU: Mauritius 
YT: Mayotte 
MX: Mexico 
FM: Micronesia 
MD: Moldova 
MC: Monaco 
MN: Mongolia 
ME: Montenegro 
MS: Montserrat 
MA: Morocco 
MZ: Mozambique 
BU: Myanmar 
MM: Myanmar 
NA: Namibia 
NR: Nauru 
NP: Nepal 
NL: Netherlands 
NC: New Caledonia 
NZ: New Zealand 
NI: Nicaragua 
NE: Niger 
NG: Nigeria 
NU: Niue 
NF: Norfolk Island 
KP: North Korea 
MK: North Macedonia 
MP: Northern Mariana Islands 
NO: Norway 
OM: Oman 
QO: Outlying Oceania 
PK: Pakistan 
PW: Palau 
PS: Palestinian Authority 
PA: Panama 
PG: Papua New Guinea 
PY: Paraguay 
PE: Peru 
PH: Philippines 
PN: Pitcairn Islands 
PL: Poland 
PT: Portugal 
XA: Pseudo-Accents 
XB: Pseudo-Bidi 
PR: Puerto Rico 
QA: Qatar 
RE: Réunion 
RO: Romania 
RU: Russia 
SU: Russia 
RW: Rwanda 
WS: Samoa 
SM: San Marino 
ST: São Tomé & Príncipe 
CQ: Sark 
SA: Saudi Arabia 
SN: Senegal 
CS: Serbia 
RS: Serbia 
YU: Serbia 
SC: Seychelles 
SL: Sierra Leone 
SG: Singapore 
SX: Sint Maarten 
SK: Slovakia 
SI: Slovenia 
SB: Solomon Islands 
SO: Somalia 
ZA: South Africa 
GS: South Georgia & South Sandwich Islands 
SS: South Sudan 
ES: Spain 
LK: Sri Lanka 
SH: St Helena, Ascension, Tristan da Cunha 
BL: St. Barthélemy 
KN: St. Kitts & Nevis 
LC: St. Lucia 
MF: St. Martin 
PM: St. Pierre & Miquelon 
VC: St. Vincent & Grenadines 
SD: Sudan 
SR: Suriname 
SJ: Svalbard & Jan Mayen 
SE: Sweden 
CH: Switzerland 
SY: Syria 
TW: Taiwan 
TJ: Tajikistan 
TZ: Tanzania 
TH: Thailand 
TL: Timor-Leste 
TP: Timor-Leste 
TG: Togo 
TK: Tokelau 
TO: Tonga 
TT: Trinidad & Tobago 
TA: Tristan da Cunha 
TN: Tunisia 
TR: Türkiye 
TM: Turkmenistan 
TC: Turks & Caicos Islands 
TV: Tuvalu 
UM: U.S. Outlying Islands 
VI: U.S. Virgin Islands 
UG: Uganda 
UA: Ukraine 
AE: United Arab Emirates 
GB: United Kingdom 
UK: United Kingdom 
UN: United Nations 
US: United States 
ZZ: Unknown Region 
UY: Uruguay 
UZ: Uzbekistan 
NH: Vanuatu 
VU: Vanuatu 
VA: Vatican City 
VE: Venezuela 
VD: Vietnam 
VN: Vietnam 
WF: Wallis & Futuna 
YD: Yemen 
YE: Yemen 
ZM: Zambia 
RH: Zimbabwe 
ZW: Zimbabwe 

*/

 



answered Jun 17 by avibootz

Related questions

...