EN
JavaScript - list of ISO 3166 country codes
9 points
In this article, we would like to present simple JavaScript version of countries and associated codes to them described by ISO 3166.
The article contains two lists:
- one ossociated name per county codes ,
- many associated country names per country code - go to second example.
Note: the below list:
- was created based on wiki list https://en.wikipedia.org/wiki/ISO_3166-1,
- uses english short names with associated Alpha-2 codes.
Country list object example:
xxxxxxxxxx
1
var Countries = new function() {
2
3
// https://en.wikipedia.org/wiki/ISO_3166-1
4
5
var list = [
6
{code: 'AF', name: 'Afghanistan'},
7
{code: 'AX', name: 'Åland Islands'},
8
{code: 'AL', name: 'Albania'},
9
{code: 'DZ', name: 'Algeria'},
10
{code: 'AS', name: 'American Samoa'},
11
{code: 'AD', name: 'Andorra'},
12
{code: 'AO', name: 'Angola'},
13
{code: 'AI', name: 'Anguilla'},
14
{code: 'AQ', name: 'Antarctica'},
15
{code: 'AG', name: 'Antigua and Barbuda'},
16
{code: 'AR', name: 'Argentina'},
17
{code: 'AM', name: 'Armenia'},
18
{code: 'AW', name: 'Aruba'},
19
{code: 'AU', name: 'Australia'},
20
{code: 'AT', name: 'Austria'},
21
{code: 'AZ', name: 'Azerbaijan'},
22
{code: 'BS', name: 'Bahamas'},
23
{code: 'BH', name: 'Bahrain'},
24
{code: 'BD', name: 'Bangladesh'},
25
{code: 'BB', name: 'Barbados'},
26
{code: 'BY', name: 'Belarus'},
27
{code: 'BE', name: 'Belgium'},
28
{code: 'BZ', name: 'Belize'},
29
{code: 'BJ', name: 'Benin'},
30
{code: 'BM', name: 'Bermuda'},
31
{code: 'BT', name: 'Bhutan'},
32
{code: 'BO', name: 'Bolivia (Plurinational State of)'},
33
{code: 'BQ', name: 'Bonaire, Sint Eustatius and Saba'},
34
{code: 'BA', name: 'Bosnia and Herzegovina'},
35
{code: 'BW', name: 'Botswana'},
36
{code: 'BV', name: 'Bouvet Island'},
37
{code: 'BR', name: 'Brazil'},
38
{code: 'IO', name: 'British Indian Ocean Territory'},
39
{code: 'BN', name: 'Brunei Darussalam'},
40
{code: 'BG', name: 'Bulgaria'},
41
{code: 'BF', name: 'Burkina Faso'},
42
{code: 'BI', name: 'Burundi'},
43
{code: 'CV', name: 'Cabo Verde'},
44
{code: 'KH', name: 'Cambodia'},
45
{code: 'CM', name: 'Cameroon'},
46
{code: 'CA', name: 'Canada'},
47
{code: 'KY', name: 'Cayman Islands'},
48
{code: 'CF', name: 'Central African Republic'},
49
{code: 'TD', name: 'Chad'},
50
{code: 'CL', name: 'Chile'},
51
{code: 'CN', name: 'China'},
52
{code: 'CX', name: 'Christmas Island'},
53
{code: 'CC', name: 'Cocos (Keeling) Islands'},
54
{code: 'CO', name: 'Colombia'},
55
{code: 'KM', name: 'Comoros'},
56
{code: 'CG', name: 'Congo'},
57
{code: 'CD', name: 'Congo (Democratic Republic of the)'},
58
{code: 'CK', name: 'Cook Islands'},
59
{code: 'CR', name: 'Costa Rica'},
60
{code: 'CI', name: 'Côte d\'Ivoire'},
61
{code: 'HR', name: 'Croatia'},
62
{code: 'CU', name: 'Cuba'},
63
{code: 'CW', name: 'Curaçao'},
64
{code: 'CY', name: 'Cyprus'},
65
{code: 'CZ', name: 'Czech Republic'},
66
{code: 'DK', name: 'Denmark'},
67
{code: 'DJ', name: 'Djibouti'},
68
{code: 'DM', name: 'Dominica'},
69
{code: 'DO', name: 'Dominican Republic'},
70
{code: 'EC', name: 'Ecuador'},
71
{code: 'EG', name: 'Egypt'},
72
{code: 'SV', name: 'El Salvador'},
73
{code: 'GQ', name: 'Equatorial Guinea'},
74
{code: 'ER', name: 'Eritrea'},
75
{code: 'EE', name: 'Estonia'},
76
{code: 'ET', name: 'Ethiopia'},
77
{code: 'FK', name: 'Falkland Islands (Malvinas)'},
78
{code: 'FO', name: 'Faroe Islands'},
79
{code: 'FJ', name: 'Fiji (Republic of)'},
80
{code: 'FI', name: 'Finland'},
81
{code: 'FR', name: 'France'},
82
{code: 'GF', name: 'French Guiana'},
83
{code: 'PF', name: 'French Polynesia'},
84
{code: 'TF', name: 'French Southern Territories'},
85
{code: 'GA', name: 'Gabon'},
86
{code: 'GM', name: 'Gambia'},
87
{code: 'GE', name: 'Georgia'},
88
{code: 'DE', name: 'Germany'},
89
{code: 'GH', name: 'Ghana'},
90
{code: 'GI', name: 'Gibraltar'},
91
{code: 'GR', name: 'Greece'},
92
{code: 'GL', name: 'Greenland'},
93
{code: 'GD', name: 'Grenada'},
94
{code: 'GP', name: 'Guadeloupe'},
95
{code: 'GU', name: 'Guam'},
96
{code: 'GT', name: 'Guatemala'},
97
{code: 'GG', name: 'Guernsey'},
98
{code: 'GN', name: 'Guinea'},
99
{code: 'GW', name: 'Guinea-Bissau'},
100
{code: 'GY', name: 'Guyana'},
101
{code: 'HT', name: 'Haiti'},
102
{code: 'HM', name: 'Heard Island and McDonald Islands'},
103
{code: 'VA', name: 'Holy See'},
104
{code: 'HN', name: 'Honduras'},
105
{code: 'HK', name: 'Hong Kong'},
106
{code: 'HU', name: 'Hungary'},
107
{code: 'IS', name: 'Iceland'},
108
{code: 'IN', name: 'India'},
109
{code: 'ID', name: 'Indonesia'},
110
{code: 'IR', name: 'Iran (Islamic Republic of)'},
111
{code: 'IQ', name: 'Iraq'},
112
{code: 'IE', name: 'Ireland'},
113
{code: 'IM', name: 'Isle of Man'},
114
{code: 'IL', name: 'Israel'},
115
{code: 'IT', name: 'Italy'},
116
{code: 'JM', name: 'Jamaica'},
117
{code: 'JP', name: 'Japan'},
118
{code: 'JE', name: 'Jersey'},
119
{code: 'JO', name: 'Jordan'},
120
{code: 'KZ', name: 'Kazakhstan'},
121
{code: 'KE', name: 'Kenya'},
122
{code: 'KI', name: 'Kiribati'},
123
{code: 'KP', name: 'Korea (Democratic People\'s Republic of)'},
124
{code: 'KR', name: 'Korea (Republic of)'},
125
{code: 'KW', name: 'Kuwait'},
126
{code: 'KG', name: 'Kyrgyzstan'},
127
{code: 'LA', name: 'Lao People\'s Democratic Republic'},
128
{code: 'LV', name: 'Latvia'},
129
{code: 'LB', name: 'Lebanon'},
130
{code: 'LS', name: 'Lesotho'},
131
{code: 'LR', name: 'Liberia'},
132
{code: 'LY', name: 'Libya'},
133
{code: 'LI', name: 'Liechtenstein'},
134
{code: 'LT', name: 'Lithuania'},
135
{code: 'LU', name: 'Luxembourg'},
136
{code: 'MO', name: 'Macao'},
137
{code: 'MK', name: 'Macedonia (the former Yugoslav Republic of)'},
138
{code: 'MG', name: 'Madagascar'},
139
{code: 'MW', name: 'Malawi'},
140
{code: 'MY', name: 'Malaysia'},
141
{code: 'MV', name: 'Maldives'},
142
{code: 'ML', name: 'Mali'},
143
{code: 'MT', name: 'Malta'},
144
{code: 'MH', name: 'Marshall Islands'},
145
{code: 'MQ', name: 'Martinique'},
146
{code: 'MR', name: 'Mauritania'},
147
{code: 'MU', name: 'Mauritius'},
148
{code: 'YT', name: 'Mayotte'},
149
{code: 'MX', name: 'Mexico'},
150
{code: 'FM', name: 'Micronesia (Federated States of)'},
151
{code: 'MD', name: 'Moldova (Republic of)'},
152
{code: 'MC', name: 'Monaco'},
153
{code: 'MN', name: 'Mongolia'},
154
{code: 'ME', name: 'Montenegro'},
155
{code: 'MS', name: 'Montserrat'},
156
{code: 'MA', name: 'Morocco'},
157
{code: 'MZ', name: 'Mozambique'},
158
{code: 'MM', name: 'Myanmar'},
159
{code: 'NA', name: 'Namibia'},
160
{code: 'NR', name: 'Nauru'},
161
{code: 'NP', name: 'Nepal'},
162
{code: 'NL', name: 'Netherlands'},
163
{code: 'NC', name: 'New Caledonia'},
164
{code: 'NZ', name: 'New Zealand'},
165
{code: 'NI', name: 'Nicaragua'},
166
{code: 'NE', name: 'Niger'},
167
{code: 'NG', name: 'Nigeria'},
168
{code: 'NU', name: 'Niue'},
169
{code: 'NF', name: 'Norfolk Island'},
170
{code: 'MP', name: 'Northern Mariana Islands'},
171
{code: 'NO', name: 'Norway'},
172
{code: 'OM', name: 'Oman'},
173
{code: 'PK', name: 'Pakistan'},
174
{code: 'PW', name: 'Palau'},
175
{code: 'PS', name: 'Palestine, State of'},
176
{code: 'PA', name: 'Panama'},
177
{code: 'PG', name: 'Papua New Guinea'},
178
{code: 'PY', name: 'Paraguay'},
179
{code: 'PE', name: 'Peru'},
180
{code: 'PH', name: 'Philippines'},
181
{code: 'PN', name: 'Pitcairn'},
182
{code: 'PL', name: 'Poland'},
183
{code: 'PT', name: 'Portugal'},
184
{code: 'PR', name: 'Puerto Rico'},
185
{code: 'QA', name: 'Qatar'},
186
{code: 'RE', name: 'Réunion'},
187
{code: 'RO', name: 'Romania'},
188
{code: 'RU', name: 'Russian Federation'},
189
{code: 'RW', name: 'Rwanda'},
190
{code: 'BL', name: 'Saint Barthélemy'},
191
{code: 'SH', name: 'Saint Helena, Ascension and Tristan da Cunha'},
192
{code: 'KN', name: 'Saint Kitts and Nevis'},
193
{code: 'LC', name: 'Saint Lucia'},
194
{code: 'MF', name: 'Saint Martin (French part)'},
195
{code: 'PM', name: 'Saint Pierre and Miquelon'},
196
{code: 'VC', name: 'Saint Vincent and the Grenadines'},
197
{code: 'WS', name: 'Samoa'},
198
{code: 'SM', name: 'San Marino'},
199
{code: 'ST', name: 'Sao Tome and Principe'},
200
{code: 'SA', name: 'Saudi Arabia'},
201
{code: 'SN', name: 'Senegal'},
202
{code: 'RS', name: 'Serbia'},
203
{code: 'SC', name: 'Seychelles'},
204
{code: 'SL', name: 'Sierra Leone'},
205
{code: 'SG', name: 'Singapore'},
206
{code: 'SX', name: 'Sint Maarten (Dutch part)'},
207
{code: 'SK', name: 'Slovakia'},
208
{code: 'SI', name: 'Slovenia'},
209
{code: 'SB', name: 'Solomon Islands'},
210
{code: 'SO', name: 'Somalia'},
211
{code: 'ZA', name: 'South Africa'},
212
{code: 'GS', name: 'South Georgia and the South Sandwich Islands'},
213
{code: 'SS', name: 'South Sudan'},
214
{code: 'ES', name: 'Spain'},
215
{code: 'LK', name: 'Sri Lanka'},
216
{code: 'SD', name: 'Sudan'},
217
{code: 'SR', name: 'Suriname'},
218
{code: 'SJ', name: 'Svalbard and Jan Mayen'},
219
{code: 'SZ', name: 'Swaziland'},
220
{code: 'SE', name: 'Sweden'},
221
{code: 'CH', name: 'Switzerland'},
222
{code: 'SY', name: 'Syrian Arab Republic'},
223
{code: 'TW', name: 'Taiwan, Province of China'},
224
{code: 'TJ', name: 'Tajikistan'},
225
{code: 'TZ', name: 'Tanzania, United Republic of'},
226
{code: 'TH', name: 'Thailand'},
227
{code: 'TL', name: 'Timor-Leste'},
228
{code: 'TG', name: 'Togo'},
229
{code: 'TK', name: 'Tokelau'},
230
{code: 'TO', name: 'Tonga'},
231
{code: 'TT', name: 'Trinidad and Tobago'},
232
{code: 'TN', name: 'Tunisia'},
233
{code: 'TR', name: 'Turkey'},
234
{code: 'TM', name: 'Turkmenistan'},
235
{code: 'TC', name: 'Turks and Caicos Islands'},
236
{code: 'TV', name: 'Tuvalu'},
237
{code: 'UG', name: 'Uganda'},
238
{code: 'UA', name: 'Ukraine'},
239
{code: 'AE', name: 'United Arab Emirates'},
240
{code: 'GB', name: 'United Kingdom of Great Britain and Northern Ireland'},
241
{code: 'US', name: 'United States of America'},
242
{code: 'UM', name: 'United States Minor Outlying Islands'},
243
{code: 'UY', name: 'Uruguay'},
244
{code: 'UZ', name: 'Uzbekistan'},
245
{code: 'VU', name: 'Vanuatu'},
246
{code: 'VE', name: 'Venezuela (Bolivarian Republic of)'},
247
{code: 'VN', name: 'Vietnam'},
248
{code: 'VG', name: 'Virgin Islands (British)'},
249
{code: 'VI', name: 'Virgin Islands (U.S.)'},
250
{code: 'WF', name: 'Wallis and Futuna'},
251
{code: 'EH', name: 'Western Sahara'},
252
{code: 'YE', name: 'Yemen'},
253
{code: 'ZM', name: 'Zambia'},
254
{code: 'ZW', name: 'Zimbabwe'}
255
];
256
257
var codes = {};
258
259
for (var i = 0; i < list.length; ++i) {
260
var entry = list[i];
261
codes[entry.code] = entry;
262
}
263
264
// public methods
265
266
this.getList= function() {
267
return list;
268
};
269
270
this.getEntry = function(code) {
271
return codes[code] || null;
272
};
273
};
274
275
// Example usage:
276
277
var pl = Countries.getEntry('PL');
278
var gb = Countries.getEntry('GB');
279
var us = Countries.getEntry('US');
280
var jp = Countries.getEntry('JP');
281
282
console.log(pl.name); // Poland
283
console.log(gb.name); // United Kingdom of Great Britain and Northern Ireland
284
console.log(us.name); // United States of America
285
console.log(jp.name); // Japan
This section contains many alternative country names that are related with same country code.
The main idea of the country names is to organise them starting from simplest, across to some other alternatives, going to longest official names.
TODO: it is required to add more alternative names to list in future.
xxxxxxxxxx
1
var Countries = new function() {
2
3
// https://en.wikipedia.org/wiki/ISO_3166-1
4
5
var list = [
6
{code: 'AF', names: ['Afghanistan']},
7
{code: 'AX', names: ['Åland Islands']},
8
{code: 'AL', names: ['Albania']},
9
{code: 'DZ', names: ['Algeria']},
10
{code: 'AS', names: ['American Samoa']},
11
{code: 'AD', names: ['Andorra']},
12
{code: 'AO', names: ['Angola']},
13
{code: 'AI', names: ['Anguilla']},
14
{code: 'AQ', names: ['Antarctica']},
15
{code: 'AG', names: ['Antigua and Barbuda']},
16
{code: 'AR', names: ['Argentina']},
17
{code: 'AM', names: ['Armenia']},
18
{code: 'AW', names: ['Aruba']},
19
{code: 'AU', names: ['Australia']},
20
{code: 'AT', names: ['Austria']},
21
{code: 'AZ', names: ['Azerbaijan']},
22
{code: 'BS', names: ['Bahamas']},
23
{code: 'BH', names: ['Bahrain']},
24
{code: 'BD', names: ['Bangladesh']},
25
{code: 'BB', names: ['Barbados']},
26
{code: 'BY', names: ['Belarus']},
27
{code: 'BE', names: ['Belgium']},
28
{code: 'BZ', names: ['Belize']},
29
{code: 'BJ', names: ['Benin']},
30
{code: 'BM', names: ['Bermuda']},
31
{code: 'BT', names: ['Bhutan']},
32
{code: 'BO', names: ['Bolivia', 'Bolivia (Plurinational State of)', 'Plurinational State of Bolivia']},
33
{code: 'BQ', names: ['Bonaire, Sint Eustatius and Saba']},
34
{code: 'BA', names: ['Bosnia and Herzegovina']},
35
{code: 'BW', names: ['Botswana']},
36
{code: 'BV', names: ['Bouvet Island']},
37
{code: 'BR', names: ['Brazil']},
38
{code: 'IO', names: ['British Indian Ocean Territory']},
39
{code: 'BN', names: ['Brunei', 'Nation of Brunei, the Abode of Peace', 'Brunei Darussalam']},
40
{code: 'BG', names: ['Bulgaria']},
41
{code: 'BF', names: ['Burkina Faso']},
42
{code: 'BI', names: ['Burundi']},
43
{code: 'CV', names: ['Cabo Verde', 'Cape Verde', 'Republic of Cabo Verde']},
44
{code: 'KH', names: ['Cambodia']},
45
{code: 'CM', names: ['Cameroon']},
46
{code: 'CA', names: ['Canada']},
47
{code: 'KY', names: ['Cayman Islands']},
48
{code: 'CF', names: ['Central African Republic']},
49
{code: 'TD', names: ['Chad']},
50
{code: 'CL', names: ['Chile']},
51
{code: 'CN', names: ['China', 'PRC', 'People\'s Republic of China']},
52
{code: 'CX', names: ['Christmas Island']},
53
{code: 'CC', names: ['Cocos (Keeling) Islands']},
54
{code: 'CO', names: ['Colombia']},
55
{code: 'KM', names: ['Comoros']},
56
{code: 'CG', names: ['Congo', 'Republic of the Congo']},
57
{code: 'CD', names: ['Congo (Democratic Republic of the)', 'DRC', 'Congo-Kinshasa', 'DR Congo', 'the DROC', 'the Congo', 'Democratic Republic of the Congo']},
58
{code: 'CK', names: ['Cook Islands']},
59
{code: 'CR', names: ['Costa Rica']},
60
{code: 'CI', names: ['Côte d\'Ivoire', 'Ivory Coast', 'Republic of Côte d\'Ivoire']},
61
{code: 'HR', names: ['Croatia']},
62
{code: 'CU', names: ['Cuba']},
63
{code: 'CW', names: ['Curaçao']},
64
{code: 'CY', names: ['Cyprus']},
65
{code: 'CZ', names: ['Czech Republic']},
66
{code: 'DK', names: ['Denmark']},
67
{code: 'DJ', names: ['Djibouti']},
68
{code: 'DM', names: ['Dominica']},
69
{code: 'DO', names: ['Dominican Republic']},
70
{code: 'EC', names: ['Ecuador']},
71
{code: 'EG', names: ['Egypt']},
72
{code: 'SV', names: ['El Salvador']},
73
{code: 'GQ', names: ['Equatorial Guinea']},
74
{code: 'ER', names: ['Eritrea']},
75
{code: 'EE', names: ['Estonia']},
76
{code: 'ET', names: ['Ethiopia']},
77
{code: 'FK', names: ['Falkland Islands (Malvinas)']},
78
{code: 'FO', names: ['Faroe Islands']},
79
{code: 'FJ', names: ['Fiji', 'Fiji (Republic of)', 'Republic of Fiji']},
80
{code: 'FI', names: ['Finland']},
81
{code: 'FR', names: ['France']},
82
{code: 'GF', names: ['French Guiana']},
83
{code: 'PF', names: ['French Polynesia']},
84
{code: 'TF', names: ['French Southern Territories']},
85
{code: 'GA', names: ['Gabon']},
86
{code: 'GM', names: ['Gambia']},
87
{code: 'GE', names: ['Georgia']},
88
{code: 'DE', names: ['Germany']},
89
{code: 'GH', names: ['Ghana']},
90
{code: 'GI', names: ['Gibraltar']},
91
{code: 'GR', names: ['Greece']},
92
{code: 'GL', names: ['Greenland']},
93
{code: 'GD', names: ['Grenada']},
94
{code: 'GP', names: ['Guadeloupe']},
95
{code: 'GU', names: ['Guam']},
96
{code: 'GT', names: ['Guatemala']},
97
{code: 'GG', names: ['Guernsey']},
98
{code: 'GN', names: ['Guinea']},
99
{code: 'GW', names: ['Guinea-Bissau']},
100
{code: 'GY', names: ['Guyana']},
101
{code: 'HT', names: ['Haiti']},
102
{code: 'HM', names: ['Heard Island and McDonald Islands']},
103
{code: 'VA', names: ['The Vatican', 'Vatican City', 'Vatican City State', 'Holy See']},
104
{code: 'HN', names: ['Honduras']},
105
{code: 'HK', names: ['Hong Kong']},
106
{code: 'HU', names: ['Hungary']},
107
{code: 'IS', names: ['Iceland']},
108
{code: 'IN', names: ['India']},
109
{code: 'ID', names: ['Indonesia']},
110
{code: 'IR', names: ['Iran', 'Iran (Islamic Republic of)']},
111
{code: 'IQ', names: ['Iraq']},
112
{code: 'IE', names: ['Ireland']},
113
{code: 'IM', names: ['Isle of Man']},
114
{code: 'IL', names: ['Israel']},
115
{code: 'IT', names: ['Italy']},
116
{code: 'JM', names: ['Jamaica']},
117
{code: 'JP', names: ['Japan']},
118
{code: 'JE', names: ['Jersey']},
119
{code: 'JO', names: ['Jordan']},
120
{code: 'KZ', names: ['Kazakhstan']},
121
{code: 'KE', names: ['Kenya']},
122
{code: 'KI', names: ['Kiribati']},
123
{code: 'KP', names: ['North Korea', 'DPRK', 'DPR Korea', 'Korea (Democratic People\'s Republic of)', 'Democratic People\'s Republic of Korea']},
124
{code: 'KR', names: ['South Korea', 'ROK', 'Korea (Republic of)', 'Republic of Korea']},
125
{code: 'KW', names: ['Kuwait']},
126
{code: 'KG', names: ['Kyrgyzstan']},
127
{code: 'LA', names: ['Laos', 'Lao People\'s Democratic Republic']},
128
{code: 'LV', names: ['Latvia']},
129
{code: 'LB', names: ['Lebanon']},
130
{code: 'LS', names: ['Lesotho']},
131
{code: 'LR', names: ['Liberia']},
132
{code: 'LY', names: ['Libya']},
133
{code: 'LI', names: ['Liechtenstein']},
134
{code: 'LT', names: ['Lithuania']},
135
{code: 'LU', names: ['Luxembourg']},
136
{code: 'MO', names: ['Macao']},
137
{code: 'MK', names: ['Macedonia', 'Macedonia (the former Yugoslav Republic of)', 'North Macedonia', 'Republic of North Macedonia']},
138
{code: 'MG', names: ['Madagascar']},
139
{code: 'MW', names: ['Malawi']},
140
{code: 'MY', names: ['Malaysia']},
141
{code: 'MV', names: ['Maldives']},
142
{code: 'ML', names: ['Mali']},
143
{code: 'MT', names: ['Malta']},
144
{code: 'MH', names: ['Marshall Islands']},
145
{code: 'MQ', names: ['Martinique']},
146
{code: 'MR', names: ['Mauritania']},
147
{code: 'MU', names: ['Mauritius']},
148
{code: 'YT', names: ['Mayotte']},
149
{code: 'MX', names: ['Mexico']},
150
{code: 'FM', names: ['Micronesia', 'FSM', 'Micronesia (Federated States of)', 'Federated States of Micronesia']},
151
{code: 'MD', names: ['Moldova', 'Moldova (Republic of)', 'Republic of Moldova']},
152
{code: 'MC', names: ['Monaco']},
153
{code: 'MN', names: ['Mongolia']},
154
{code: 'ME', names: ['Montenegro']},
155
{code: 'MS', names: ['Montserrat']},
156
{code: 'MA', names: ['Morocco']},
157
{code: 'MZ', names: ['Mozambique']},
158
{code: 'MM', names: ['Myanmar']},
159
{code: 'NA', names: ['Namibia']},
160
{code: 'NR', names: ['Nauru']},
161
{code: 'NP', names: ['Nepal']},
162
{code: 'NL', names: ['Netherlands']},
163
{code: 'NC', names: ['New Caledonia']},
164
{code: 'NZ', names: ['New Zealand']},
165
{code: 'NI', names: ['Nicaragua']},
166
{code: 'NE', names: ['Niger']},
167
{code: 'NG', names: ['Nigeria']},
168
{code: 'NU', names: ['Niue']},
169
{code: 'NF', names: ['Norfolk Island']},
170
{code: 'MP', names: ['Northern Mariana Islands']},
171
{code: 'NO', names: ['Norway']},
172
{code: 'OM', names: ['Oman']},
173
{code: 'PK', names: ['Pakistan']},
174
{code: 'PW', names: ['Palau']},
175
{code: 'PS', names: ['Palestine', 'Palestine, State of', 'State of Palestine']},
176
{code: 'PA', names: ['Panama']},
177
{code: 'PG', names: ['Papua New Guinea']},
178
{code: 'PY', names: ['Paraguay']},
179
{code: 'PE', names: ['Peru']},
180
{code: 'PH', names: ['Philippines']},
181
{code: 'PN', names: ['Pitcairn']},
182
{code: 'PL', names: ['Poland']},
183
{code: 'PT', names: ['Portugal']},
184
{code: 'PR', names: ['Puerto Rico']},
185
{code: 'QA', names: ['Qatar']},
186
{code: 'RE', names: ['Réunion']},
187
{code: 'RO', names: ['Romania']},
188
{code: 'RU', names: ['Russia', 'Russian Federation']},
189
{code: 'RW', names: ['Rwanda']},
190
{code: 'BL', names: ['Saint Barthélemy']},
191
{code: 'SH', names: ['Saint Helena, Ascension and Tristan da Cunha']},
192
{code: 'KN', names: ['Saint Kitts and Nevis']},
193
{code: 'LC', names: ['Saint Lucia']},
194
{code: 'MF', names: ['Saint Martin (French part)']},
195
{code: 'PM', names: ['Saint Pierre and Miquelon']},
196
{code: 'VC', names: ['Saint Vincent and the Grenadines']},
197
{code: 'WS', names: ['Samoa']},
198
{code: 'SM', names: ['San Marino']},
199
{code: 'ST', names: ['Sao Tome and Principe', 'Saint Thomas and Prince', 'São Tomé and Príncipe', 'Democratic Republic of São Tomé and Príncipe']},
200
{code: 'SA', names: ['Saudi Arabia']},
201
{code: 'SN', names: ['Senegal']},
202
{code: 'RS', names: ['Serbia']},
203
{code: 'SC', names: ['Seychelles']},
204
{code: 'SL', names: ['Sierra Leone']},
205
{code: 'SG', names: ['Singapore']},
206
{code: 'SX', names: ['Sint Maarten (Dutch part)']},
207
{code: 'SK', names: ['Slovakia']},
208
{code: 'SI', names: ['Slovenia']},
209
{code: 'SB', names: ['Solomon Islands']},
210
{code: 'SO', names: ['Somalia']},
211
{code: 'ZA', names: ['South Africa']},
212
{code: 'GS', names: ['South Georgia and the South Sandwich Islands']},
213
{code: 'SS', names: ['South Sudan']},
214
{code: 'ES', names: ['Spain']},
215
{code: 'LK', names: ['Sri Lanka']},
216
{code: 'SD', names: ['Sudan']},
217
{code: 'SR', names: ['Suriname']},
218
{code: 'SJ', names: ['Svalbard and Jan Mayen']},
219
{code: 'SZ', names: ['Swaziland']},
220
{code: 'SE', names: ['Sweden']},
221
{code: 'CH', names: ['Switzerland']},
222
{code: 'SY', names: ['Syria', 'Syrian Arab Republic']},
223
{code: 'TW', names: ['Taiwan', 'Taiwan, Province of China', 'Republic of China (Taiwan)']},
224
{code: 'TJ', names: ['Tajikistan']},
225
{code: 'TZ', names: ['Tanzania', 'Tanzania, United Republic of', 'United Republic of Tanzania']},
226
{code: 'TH', names: ['Thailand']},
227
{code: 'TL', names: ['Timor-Leste']},
228
{code: 'TG', names: ['Togo']},
229
{code: 'TK', names: ['Tokelau']},
230
{code: 'TO', names: ['Tonga']},
231
{code: 'TT', names: ['Trinidad and Tobago']},
232
{code: 'TN', names: ['Tunisia']},
233
{code: 'TR', names: ['Turkey']},
234
{code: 'TM', names: ['Turkmenistan']},
235
{code: 'TC', names: ['Turks and Caicos Islands']},
236
{code: 'TV', names: ['Tuvalu']},
237
{code: 'UG', names: ['Uganda']},
238
{code: 'UA', names: ['Ukraine']},
239
{code: 'AE', names: ['United Arab Emirates']},
240
{code: 'GB', names: ['United Kingdom', 'UK', 'U.K.', 'United Kingdom of Great Britain and Northern Ireland']},
241
{code: 'US', names: ['United States', 'US', 'U.S.', 'USA', 'America', 'United States of America']},
242
{code: 'UM', names: ['United States Minor Outlying Islands']},
243
{code: 'UY', names: ['Uruguay']},
244
{code: 'UZ', names: ['Uzbekistan']},
245
{code: 'VU', names: ['Vanuatu']},
246
{code: 'VE', names: ['Venezuela', 'Venezuela (Bolivarian Republic of)']},
247
{code: 'VN', names: ['Vietnam']},
248
{code: 'VG', names: ['Virgin Islands (British)']},
249
{code: 'VI', names: ['Virgin Islands (U.S.)']},
250
{code: 'WF', names: ['Wallis and Futuna']},
251
{code: 'EH', names: ['Western Sahara']},
252
{code: 'YE', names: ['Yemen']},
253
{code: 'ZM', names: ['Zambia']},
254
{code: 'ZW', names: ['Zimbabwe']}
255
];
256
257
var codes = {};
258
var names = {};
259
260
for (var i = 0; i < list.length; ++i) {
261
var entry = list[i];
262
var keys = entry.names;
263
for (var j = 0; j < keys.length; ++j) {
264
var key = keys[j].toLocaleLowerCase();
265
names[key] = entry;
266
}
267
codes[entry.code] = entry;
268
}
269
270
// public methods
271
272
this.getList= function() {
273
return list;
274
};
275
276
this.getEntryByCode = function(code) {
277
return codes[code] || null;
278
};
279
280
this.getEntryByName = function(name) {
281
var key = name.toLocaleLowerCase();
282
return names[key] || null;
283
};
284
};
285
286
// Example usage:
287
288
var pl = Countries.getEntryByCode('PL');
289
var gb = Countries.getEntryByCode('GB');
290
var us = Countries.getEntryByName('USA');
291
var jp = Countries.getEntryByName('Japan');
292
293
console.log(pl.names); // Poland
294
console.log(gb.names); // United Kingdom,UK,U.K.,United Kingdom of Great Britain and Northern Ireland
295
console.log(us.names); // United States,US,U.S.,USA,America,United States of America
296
console.log(jp.names); // Japan