zoukankan      html  css  js  c++  java
  • HTML5 TypeArray和Unicode 字符之间转换

    1.Uint32Array测试成功

        // Uint32Array 测试成功
        //字符串转为ArrayBuffer对象
        function strToab() {
            var str = '张三丰';
            var buf = new ArrayBuffer(str.length * 4);
            var bufView = new Uint32Array(buf);
            for (var i = 0; i < str.length; i++) {
                bufView[i] = str.charCodeAt(i);
            }
            console.info(bufView);
        }
        strToab();
        //将 ArrayBuffer对象,转换成字符串
        function abTostr() {
            var bufView = new Uint32Array([24352, 19977, 20016]); //[24352, 19977, 20016]
            console.info(bufView);
            var result = '';
            for (var i = 0; i < bufView.length; i++) {
                result += String.fromCharCode(bufView[i]);
            }
            console.info(result); //输出结果为空
        }
        abTostr();

    2.Uint16Array测试成功

        //Uint16Array 测试成功
        //字符串转为ArrayBuffer对象
        function strToab() {
            var str = '张三丰';
            var buf = new ArrayBuffer(str.length * 2);
            var bufView = new Uint16Array(buf);
            for (var i = 0; i < str.length; i++) {
                bufView[i] = str.charCodeAt(i);
            }
            console.info(bufView);
        }
        strToab();
        //将 ArrayBuffer对象,转换成字符串
        function abTostr() {
            //方式1,无效
            //var buf = new ArrayBuffer([24352, 19977, 20016]);
            //var bufView = new Uint16Array(buf); //获得的结果为空
            //方式2,有效
            var bufView = new Uint16Array([24352, 19977, 20016]); //[24352, 19977, 20016]
            var result = '';
            for (var i = 0; i < bufView.length; i++) {
                result += String.fromCharCode(bufView[i]);
            }
            console.info(result); //输出结果 '张三丰'
        }
        abTostr();

    3.Uint8Array 测试失败

            //Uint8Array 测试失败
        //字符串转为ArrayBuffer对象
        function strToab() {
            var str = '张三丰';
            var buf = new ArrayBuffer(str.length * 2);
            var bufView = new Uint8Array(buf);
            for (var i = 0; i < str.length; i++) {
                bufView[i] = str.charCodeAt(i);
            }
            console.info(bufView);
        }
        strToab();
        //将 ArrayBuffer对象,转换成字符串
        function abTostr() {
            var buf = new ArrayBuffer([24352, 19977, 20016]);
            // var bufView = new Uint16Array(buf); //获得的结果为空
            var bufView = new Uint8Array([32, 9, 48]); //[24352, 19977, 20016]
            console.info(bufView);
            var result = '';
            for (var i = 0; i < bufView.length; i++) {
                result += String.fromCharCode(bufView[i]);
            }
            console.info(result); //输出结果为空
        }
        abTostr();
  • 相关阅读:
    java及前端请求跨域问题
    Node.js初级
    Oracle学习过程(随时更新)
    记录一下工作中犯的低级错误
    Maven管理项目架包
    使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件
    position 定位属性
    一般处理程序 ashx 无法获取Session 值
    删除SQL SERVER 登录记录
    web.config 连接字符串 加密
  • 原文地址:https://www.cnblogs.com/tianma3798/p/5835392.html
Copyright © 2011-2022 走看看