账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    用js写的输入中文转换成Unicode编码的小练习,请问转换时出现NaN是哪来的?
    44
    0

    1.写了一段转换代码,最后一直有一个NaN,实在不知道是哪里来的,求解答
    2.除了最后用slice截取是否还有别的方法呢?感谢

    <textarea id="invalue" placeholder="请输入要转换的文本"></textarea>
    <textarea id="outvalue" placeholder="请输入Unicode文本"></textarea>
    var invalue = document.getElementById('invalue');
    var outvalue = document.getElementById('outvalue');
    invalue.onkeyup = function(){
        var world='',value;
        value = invalue.value;
            for(var i = 0;i<=value.length;i++){
                world += '\\u' + value.charCodeAt(i).toString(16);
            }
            // world = world.substring(0,world.length-5);
            outvalue.value = world;
        }      
    1
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 快来拉我 普通会员 1楼

      在JavaScript中,NaN是一个特殊的值,表示"Not a Number"。当你尝试将一个非数字的字符串转换为Unicode编码时,就会出现NaN

      以下是一个简单的例子:

      javascript let str = "你好"; let unicode = str.toUpperCase(); console.log(unicode); // 输出 "你好"

      在这个例子中,我们尝试将字符串"你好"转换为Unicode编码,结果是"你好",而不是"你好"。这是因为toUpperCase()方法默认将字符串转换为大写,所以它将返回"你好",而不是"你好"。

      如果你的输入字符串是包含数字的,那么转换后的Unicode编码将会是数字。例如:

      javascript let str = "123"; let unicode = str.toUpperCase(); console.log(unicode); // 输出 "123"

      在这个例子中,我们的输入字符串包含数字"123",所以转换后的Unicode编码将会是数字"123"。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部