Simple interface for ISO-639-1 2-letter language codes and common IETF BCP 47 language tags.
Forked from iso-639-1 and extended with a some common language subtags for regional variations (eg. en-GB
, pt-BR
, zh-Hans
). The intention is not to provide a definitive list, but a subset of commonly used language tags / locales.
npm install iso-639-1-plus
const ISO6391 = require('iso-639-1-plus');
console.log(ISO6391.getName('en-GB')); // 'English (UK)'
import ISO6391 from 'iso-639-1-plus';
console.log(ISO6391.getName('en-GB')); // 'English (UK)'
HTML
<script type="text/javascript" src="./node_modules/iso-639-1-plus/build/index.js"></script>
Visit global variable ISO6391 in js
console.log(ISO6391.getName('en-GB')); // 'English (UK)'
- @param code {string}
- @return {string}
Lookup language English name by code
- @return {array}
Get array of all language English names
- @param code {string}
- @return {string}
Lookup language native name by code
- @return {array}
Get array of all language native names
- @param name {string}
- @return {string}
Lookup code by English name or native name
- @return {array}
Get array of all codes
- @param code {string}
- @return {boolean}
Check whether the given code is in the list of ISO-639-1
- @param codes {array}
- @return {array}
Get the array of the language objects by the given codes
const ISO6391 = require('iso-639-1-plus')
console.log(ISO6391.getName('zh')) // 'Chinese'
console.log(ISO6391.getNativeName('zh')) // '中文'
console.log(ISO6391.getAllNames()) // ['Afar','Abkhaz', ... ,'Zulu']
console.log(ISO6391.getAllNativeNames()) //['Afaraf','аҧсуа бызшәа', ... ,'isiZulu' ]
console.log(ISO6391.getCode('Chinese')) // 'zh'
console.log(ISO6391.getCode('中文')) // 'zh'
console.log(ISO6391.getAllCodes()) //['aa','ab',...,'zu']
console.log(ISO6391.validate('en')) // true
console.log(ISO6391.validate('xx')) // false
console.log(ISO6391.getLanguages(['en', 'zh']))
// [{code:'en',name:'English',nativeName:'English'},{code:'zh',name:'Chinese',nativeName:'中文'}]