首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将双字节整数转换为单字节-Javascript

将双字节整数转换为单字节-Javascript
EN

Stack Overflow用户
提问于 2013-03-12 19:12:52
回答 2查看 3.2K关注 0票数 3

可以使用java脚本将双字节整数转换为单字节吗??我需要转换为单字节的双字节数字,当它输入到一个文本box.Is有任何方法在jQuery或javascript中可用。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-12 19:28:34

没有内置的方法可以将1 (U+FF11)转换为1 (U+0031)。您可以使用正则表达式专门针对您提到的字符执行此操作:

代码语言:javascript
复制
var rex = /[\uFF10-\uFF19]/g;
var str = "1234";

console.log("Before: " + str);  
str = str.replace(rex, function(ch) {
    return String.fromCharCode(ch.charCodeAt(0) - 65248);
});

console.log("After: " + str);

Live Example (请务必打开JavaScript控制台)| Source

票数 4
EN

Stack Overflow用户

发布于 2014-04-25 16:41:04

为什么你不能转换它? 65296是你的魔术数字,表永远不会改变,所以只需上下运行它,你就可以用这种方式转换数字。

这会将单字节转换为双字节,然后再转换回来。

示例需要Jquery,但您可以编写它,这并不是很容易。

代码语言:javascript
复制
<input type="text" id="one" value="1234567890"><br/>
<input type="text" id="two"><br/>
<input type="text" id="three">

<script>
    symbolsToEntities=function(sText){
        var sNewText = "";
        var iLen = sText.length;
        for (i=0; i<iLen; i++){
        iCode = sText.charCodeAt(i);
            sNewText += (iCode > 256? "&#" + iCode + ";": sText.charAt(i));
        };
        return sNewText;
    };

    ConvertNumber=function(num){
        var O='';
        for (var i = 0, len = num.length; i < len; i++){
            O+='&#'+(parseInt(num[i])+65296)+';';
        };
        return O;
    };

    ConvertNumberagain=function(num){
        var O='';
        var res = num.split(';');
        $.each(res, function( key, value ){
            if (value.length!=0){
                O+=parseInt(value.replace('&#',''))-65296;
            };
        });
        return O;
    };
    var doublebyte=ConvertNumber($('#one').val());
    doublebyte = $('<div>').html(doublebyte).text();
    $('#two').val(doublebyte);
    var singlebyte=symbolsToEntities($('#two').val());
    singlebyte=ConvertNumberagain(singlebyte);
    $('#three').val(singlebyte);
</script>

现场示例:http://jsfiddle.net/399EM/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15359612

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档