You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JavaScript实现:通过用户输入匹配对象键并显示对应值

修复你的代码转换工具问题

嘿,我看到你的代码里有两个关键小问题导致它没法正常运行,咱们一步步来修复:

问题1:获取输入值的方式错误

你写的$("#userInput").val只是引用了jQuery的val方法本身,并没有调用它来获取输入框里的实际内容。必须加上括号()才能触发方法,拿到用户输入的文本。

问题2:未正确访问对象的对应值

在alert里,你需要通过键名来访问对象里的对应值,也就是用GardinerToUnicodeCodePoint[userInput]来获取匹配到的编码值,而不是保留注释内容。


修正后的完整代码:

$(document).ready(function() {
  // 把对象提到外面,避免每次点击都重新创建,提升一点性能
  const GardinerToUnicodeCodePoint = {
    "A1" :"995328",
    "A1A" :"995329",
    "A1B" :"995330",
    "A1C" :"995331",
    "A2" :"995332",
    "A2A" :"995333",
    "A3" :"995334",
    "A3A" :"995335",
    "A3B" :"995336",
    "A4" :"995337",
    "A4A" :"995338",
    "A4B" :"995339",
    "A4C" :"995340",
    "A4D" :"995341",
    "A4E" :"995342",
    "A5" :"995343",
    "A5A" :"995344",
    "A5B" :"995345",
    "A5C" :"995346",
    "A6" :"995347",
  };

  $("#convert").click(function(){
    const userInput = $("#userInput").val().trim(); // 加上trim()可以去掉输入的前后空格,避免误判
    if (userInput in GardinerToUnicodeCodePoint) {
      alert(GardinerToUnicodeCodePoint[userInput]);
    } else {
      alert("No code found!");
    }
  });
});

我还额外加了个小优化:用trim()处理用户输入,这样可以忽略输入前后的空格,避免用户不小心输入空格导致匹配失败的情况。另外把对象移到了点击事件外面,不用每次点击按钮都重新创建这个大对象,稍微提升一点性能~

内容的提问来源于stack exchange,提问作者Boris J.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.28 03:28:40