자바스크립트 브라우저 언어 추출 체크 방법 JAVASCRIPT FOR DETECTING BROWSER LANGUAGE

현재브라우저 언어 설정값을 가져오는 방법에는 IE와 비 IE(파폭, 크롬 등등)의 차이가 있습니다.

IE의 navigator객체에는 systemLanguage, userLanguage, browserLanguage 가 있어 마치 브라우저 언어를 보여줄 것 같지만, 전혀 그렇지 않아 사람을 혼란에 빠트리죠.

혼란을 주는 IE전용 속성

  • navigator.userLanguage OS의 제어판 – 국가 및 언어 – 입력 언어를 나타낸다.
  • navigator.browserLanguage, navigator.systemLanguage OS의 제어판 – 국가 및 언어 – 표시 언어의 반환한다.(browserLanguage와 systemLanguage의 차이는 발견하지 못했다.)
  • 모두 OS 언어 설정과 연관되어있다
    $(function(){  /*   * 비 IE에서는 navigator.language 로 브라우저 현재 설정된 언어를 쉽게 알 수 있으나,   * IE에서는 브라우저에 설정된 언어를 알 수 있는 navigator.language 속성이 없기때문에,   * HTTP 응답 헤더값을 알아와야 하는 별도 처리가 슬프게도 필요 합니다.   */  var language;  if (navigator.language) {    // 비 IE에서 작동    language = navigator.language  } else {    // IE에서 작동    $.ajax({      url: "http://ajaxhttpheaders.appspot.com",      dataType: 'jsonp',      success: function(headers) {        language = headers['Accept-Language'];        alert(language) // 요청 헤더에서 추출한 사용자 브라우저의 언어를 열거합니다.      }    });  }});

웹브라우저(사용자) 언어는 브라우저가 보내주는 Accept Language 헤더 정보를 통하여 판별할 수 있습니다.

PHP의 경우에는 _$SERVER [‘HTTP_ACCEPT_LANGUAGE’] 정보를 통하여 해당 정보를 알 수 있고,

ASP의 경우엔 Request.ServerVariables(“HTTP_ACCEPT_LANGUAGE”) 로 알아낼 수 있습니다.

1. 형식

ko

en-us

ja

en-us,en;q=0.5

ko-kr, ko;q=0.8, en-us;q=0.5, en;q=0.3 

“ko-kr, ko;q=0.8, en-us;q=0.5, en;q=0.3″정보는해당사용자는한국어가주요사용언어이고미국영어,영어순서로사용선택이 

가능하다는 이야기입니다.

2. ISO 639 국제표준

C2C3KNAMEENAME
lglug간다어Ganda
glglg갈리시아어;갈레고어Gallegan;Galician (AGAL)
Galician (RAG)
gdgla게일어;스코틀랜드 게일어Gaelic;Scottish Gaelic
gngrn과라니어Guarani
guguj구자라트어Gujarati
kageo/kat그루지야어Georgian
elgre/ell그리스어(현대)Modern Greek; Greek (ελληνικά)
klkal그린란드어;칼랄리수트Greenlandic;Kalaallisut
nvnav나바호어Navajo;Navaho
nanau나우루어Nauru
nldut/nld네덜란드어;플라망어Dutch;Flemish (Nederlands)
nenep네팔어Nepali
nonor노르웨이어Norwegian (Norsk)
nnnno노르웨이어(뉘노르스크);신노르웨이어Norwegian Nynorsk
nbnob노르웨이어(보크몰);덴마크-노르웨이어Norwegian Bokmal
nynya니안자어;체와어;치체와Chichewa;Chewa;Nyanja
dadan덴마크어Danish (Dansk)
deger/deu독일어German (Deutsch)
dvdiv디베히어Divehi language
lolao라오어Lao; Laothian (Phaasaa Laao)
lvlav라트비아어Latvian (Latviešu valoda)
lalat라틴어Latin
rurus러시아어Russian (русскийязык)
rmroh로망슈어;레토로망어;라이티아 로망스어Rhaeto-Romance
rorum/ron루마니아어Romanian (Limba Română)
lulub루바카탕가어Luba-Katanga
lbltz룩셈부르크어Luxembourgish;Letzeburgesch
rnrun룬디어Rundi
rwkin르완다어;키냐르완다어Kinyarwanda
ltlit리투아니아어Lithuanian (Lietuviųkalba)
lilim림뷔르흐어Limburgan;Limburger;Limburgish
lnlin링갈라어Lingala
mgmlg마다가스카르어Malagasy
mrmar마라타어Marathi
mhmah마셜어Marshallese
mimao/mri마오리어Maori
mkmac/mkd마케도니아어Macedonian (македонскијазик)
mlmal말라얄람어Malayalam
msmay/msa말레이어Malay (بهاس ملايو)
gvglv맨어;맹크스어Manx
momol몰도바어Moldavian;Moldovan
mtmlt몰타어Maltese
mnmon몽골어Mongolian
babak바슈키르어Bashkir
eubaq/eus바스크어Basque
bmbam밤바라어Bambara
mybur/mya버마어Burmese
vivie베트남어Vietnamese (tiếng Việt/Việt ngữ)
veven벤다어Venda
bebel벨라루스어Belarusian/Byelorussian (беларускаямова)
bnben벵골어Bengali
bsbos보스니아어Bosnian (Bosanski)
vovol볼라퓌크Volapuk
bgbul불가리아어Bulgarian (българскиезик)
brbre브르타뉴어Breton (Brezhoneg)
bibis비슐라마어Bislama
bhbih비하르어Bihari
scsrd사르데냐어Sardinian
smsmo사모아어Samoan
sesme사미어(북)Northern Sami
sasan산스크리트어Sanskrit
sgsag상고어Sango
srscc/srp세르비아어Serbian (српскијезик)
sosom소말리어Somali
stsot소토어(남)Southern Sotho
snsna쇼나어Shona
susun순다어Sundanese
ssssw스와티어Swati
swswa스와힐리어;키스와힐리어Swahili
svswe스웨덴어Swedish (Svenska)
esspa스페인어;에스파냐어;카스티야어Spanish (Español); Castilian (Castellano)
cuchu슬라브어(고대 교회)Church Slavic
skslo/slk슬로바키아어Slovak (Slovenčina)
slslv슬로베니아어Slovenian (Slovenski jezik)
sdsnd신드어Sindhi
sisin싱할라어Sinhalese
iiiii쓰촨 이어Sichuan Yi
anarg아라곤어Aragonese
arara아랍어Arabic (لْعَرَبيّة)
hyarm/hye아르메니아어Armenian (Հայեր)
avava아바르어Avar
aeave아베스타어Avestan
asasm아삼어Assamese
ayaym아이마라어Aymara
isice/isl아이슬란드어Icelandic
hthat아이티 크리올어Haitian;Haitian Creole
gagle아일랜드어Irish
azaze아제르바이잔어;아제리어Azeri;Azerbaijani (آذریلر)
akaka아칸어Akan
aaaar아파르어Afar
afafr아프리칸스어Afrikaans
sqalb/sqi알바니아어Albanian (Gjuha Shqipe)
amamh암하라어Amharic
ababk압하스어;압수아어Abkhazian
etest에스토니아어Estonian (Eesti Keel)
eoepo에스페란토Esperanto
eeewe에웨어Ewe
eneng영어English
omorm오로모어;갈라어Oromo
orori오리야어Oriya
ososs오세트어Ossetian;Ossetic
ojoji오지브와어Ojibwa
ococi오크어;옥시탕;랑그도크어;프로방스어(1500년이후) 
wawln왈론어Walloon
yoyor요루바어Yoruba
ururd우르두어Urdu
uzuzb우즈베크어Uzbek (O‘zbek tili / Ўзбектили)
ukukr우크라이나어Ukrainian (украї́нськамо́ва)
wowol월로프어Wolof
cywel/cym웨일즈어Welsh
uguig위구르어Uighur
nrnbl은데벨레어(남)South Ndebele
ndnde은데벨레어(북)North Ndebele
ngndo은동가어Ndonga ndonga
igibo이그보어Igbo
iuiku이누이트어;이눅티투트Inuktitut
ikipk이누피아크어;북부 이누이트어Inupiaq
ioido이도어Ido
yiyid이디시어Yiddish
itita이탈리아어Italian (Italiano)
idind인도네시아어Indonesian (Bahasa Indonesia)
iaina인테르링구아(국제보조어협회)Interlingua
(International Auxiliary Language Association)
ieine인테르링구에;옥시덴탈Interlingue
jajpn일본어Japanese (日本語/にほんご)
jvjav자바어Javanese
dzdzo종카어Dzongkha
zazha좡어Zhuang;Chuang
zuzul줄루어Zulu
zhchi/zho중국어Chinese Simplified (简体中文)
Chinese Traditional (簡體中文)
chcha차모로어Chamorro
ceche체첸어Chechen
cscze/ces체코어Czech (ˈʧɛʃcɪna)
tstso총가어Tsonga
cvchv추바슈어Chuvash
tntsn츠와나어Tswana
krkau카누리어Kanuri
kskas카슈미르어Kashmiri
kkkaz카자흐어Kazakh
cacat카탈루냐어;카탈란Catalan (Català)
knkan칸나다어Kannada
quque케추아어Quechua
cocos코르시카어Corsican
kvkom코미어Komi
xhxho코사어Xhosa
kwcor콘월어Cornish
kgkon콩고어Kongo
kjkua콰냐마어Kuanyama;Kwanyama
kukur쿠르드어Kurdish (Kurdî/کورد)
hrscr/hrv크로아티아어Croatian (Hrvatski)
crcre크리어Cree
kmkhm크메르어Khmer
kykir키르기스어Kirghiz
kikik키쿠유어;기쿠유어Kikuyu;Gikuyu
tltgl타갈로그어Filipino (Tagalog)
tatam타밀어Tamil
ththa타이어Thai (ภาษาไทย)
tgtgk타지크어Tajik
tttat타타르어Tatar
tytah타히티어Tahitian
trtur터키어;튀르크어Turkish (Türkçe)
tetel텔루구어Telugu
toton통아어(통아제도) 
tktuk투르크멘어Turkmen
twtwi트위어Twi
titir티그리냐어Tigrinya
botib/bod티베트어Tibetan
pspus파슈토어Pushto
pipli팔리어Pali
papan펀자브어Panjabi;Punjabi
fofao페로어Faroese
faper/fas페르시아어;파르시어Persian (فارسی)
ptpor포르투갈어Portuguese-BR (Português)
Portuguese-PT (Português)
plpol폴란드어Polish (język polski)
ffful풀라어Fulah;Fulani
frfre/fra프랑스어French (Français)
fyfry프리지아어Frisian
fjfij피지어Fijian
fifin핀란드어Finnish (Suomi)
hahau하우사어Hausa
kokor한국어Korean
huhun헝가리어Hungarian (Magyar)
hzher헤레로어Herero
hohmo히리모투어 
heheb히브리어Hebrew (עברית)
hihin힌디어Hindi (हिन्दी)

아직 찾지 못한 언어…

Hessian (Hessisch)

Kashubian (Pòmòrsczi)

Pig Latin (Backslang)

 

댓글 남기기