• <menu id="kwwkm"><tt id="kwwkm"></tt></menu>
  • <menu id="kwwkm"><strong id="kwwkm"></strong></menu>
  • JS基礎篇--JS之漢字與Unicode碼的相互轉化
    佚名
    2025-05-29 05:01:45
    0

    有時候,我們在給后端傳遞變量的的值中有漢字,可能由于編碼的原因,傳遞到后端后變為亂碼了。所以有時候為了省事或者其它特殊要求的時候,會把傳遞的漢字轉換成Unicode編碼后再進行傳遞。

    當然漢字轉換成unicode編碼,使用JS的charCodeAt()方法就可以。

    '好'.charCodeAt(0).toString(16)
    "597d"

    這段代碼的意思是,把字符'好'轉化成Unicode編碼,toString()就是把字符轉化成16進制了

    用法:charCodeAt() 方法可返回指定位置的字符的 Unicode 編碼。這個返回值是 0 - 65535 之間的整數

    語法:stringObject.charCodeAt(index)

    index參數必填,表示字符串中某個位置的數字,即字符在字符串中的下標。

    注:字符串中第一個字符的下標是 0。如果 index 是負數,或大于等于字符串的長度,則 charCodeAt() 返回 NaN。

    例如:

    var str="Hello world!"
    document.write(str.charCodeAt(1))
    //結果:101

    '好哦'.charCodeAt(0).toString(16)
    "597d"
    '好哦'.charCodeAt(1).toString(16)
    "54e6"

    要是想把unicode解碼成字符呢?

    要想對Unicode解碼的話,必須要用轉義字符'\u'

    '\u54e6'
    "哦"

    總結下:

    js unicode是以十六進制代碼外加開頭\u表示的字符串。即\unnnn

    unicode 是為了解決傳統的字符編碼方案的局限而產生的,它為每種語言中的每個字符設定了統一并且唯一的二進制編碼,以滿足跨語言、跨平臺進行文本轉換、處理的要求。1990年開始研發,1994年正式公布。

    下面先看一個簡單的例子,漢字轉化為unicode方法:

    function toUnicodeFun(data){
      if(data == '' || typeof data == 'undefined') return '請輸入漢字';
       var str =''; 
       for(var i=0;i

    unicode轉化為漢字的方法:

    function toChineseWords(data){
        if(data == '' || typeof data == 'undefined') return '請輸入十六進制unicode';
        data = data.split("\\u");
        var str ='';
        for(var i=0;i

    在網上找到另外一個實現方式:

    var GB2312UnicodeConverter={
        ToUnicode:function(str){
           return escape(str).toLocaleLowerCase().replace(/%u/gi,'\\u');
        },
        ToGB2312:function(str){
           return unescape(str.replace(/\\u/gi,'%u'));
        }
    };
    var result = GB2312UnicodeConverter.ToUnicode('中國'); //\u4e2d\u56fd
    var result2 = GB2312UnicodeConverter.ToUnicode(result); //%5cu4e2d%5cu56fd

    下面實現漢字轉Unicode碼:

    function toUnicode(s){ 
        return s.replace(/([\u4E00-\u9FA5]|[\uFE30-\uFFA0])/g,function(newStr){
            return "\\u" + newStr.charCodeAt(0).toString(16); 
        }); 
    }

    相關內容

    JS基礎篇--JS之漢字與...
    有時候,我們在給后端傳遞變量的的值中有漢字,可能由于編碼的原因,傳...
    2025-05-29 05:01:45
    js與html編碼不同,j...
    文章瀏覽閱讀343次?!巨D】javascript和html中uni...
    2025-05-29 05:01:35

    熱門資訊

    票房破3000萬,看完《焚城》... 票房破3000萬,看完《焚城》,我想說:劉德華這片拍出了港片良心,焚城,范偉,票房,港片,劉德華,莫...
    業界最美混血美少女,長相清純卻... 今天要給大家介紹的這位女神,有著日美混血的美少女—西田卡莉娜!
    包青天系列電視劇觀看順序指南:... 包青天幾部的先后順序?①1、《包公出巡》是王枚,金鰲勛執導的古裝傳奇劇。2、《包公奇案》,以“情花劫...
    盤點《七龍珠》劇場版20部,你... 今天小白為大家整理《七龍珠》劇場版,沒想到總計有20部哦,龍珠迷們,你們又看過幾部呢?接下來我們來盤...
    水龍頭單孔和雙孔區別 單孔和雙... 相信大家對水龍頭都不陌生吧!在日常生活中,水龍頭是特別常見的一種用具。我們大多數人都了解水龍頭嗎?知...
    動漫七大粉色系美少女,最后一個... 粉色系是少女心的代表色,象征著可愛、萌、單純。細數動漫中擁有粉色頭發的美少女們,她們不世故、單純而善...
    因果報應:2024年度印度懸疑... 在印度電影的璀璨星空中,懸疑片以其獨特的魅力和深刻的社會意義,一直占據著不可動搖的地位。最近,一部名...
    《春花焰》大結局:惡心的小說改... 從9月開始,古裝劇連臺好戲,有任嘉倫和李蘭迪主演的《流水迢迢》,李沁和曾舜晞主演的《七夜雪》,劉學義...
    白夜破曉續作強勢回歸,原班人馬... 七年磨一劍,白夜系列再續經典時隔七年,備受期待的《白夜追兇》續作——《白夜破曉》終于在今日(11月2...
    因果報應2024年上映:尼蒂蘭... 印度電影《因果報應》的導演是尼蒂蘭·薩米納坦,這是他的第二部電影作品,其代表作還有《猴子玩具》.主演...
    国内偷自第一二三区_一区二区欧美视频_三上悠亚中文字幕在线播放_韩国本免费一级毛片免费
  • <menu id="kwwkm"><tt id="kwwkm"></tt></menu>
  • <menu id="kwwkm"><strong id="kwwkm"></strong></menu>
  • >