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

如何修改输入框文本?温度转换器C转F输出NaN问题求助

温度转换器显示NaN问题解决方法

你的代码存在三个关键问题,导致输出结果为NaN:

  • 获取输入框元素后,没有取它的value属性,直接对DOM元素调用parseFloat()会得到NaN
  • 代码中使用了中文引号“”,JavaScript仅支持英文引号""或''
  • 点击事件的回调函数缺少闭合的}),会引发语法错误

修正后的完整代码:

let convert = document.getElementById("convert")
convert.addEventListener("click", function(){
    let cel = document.getElementById("cel")
    let newTemp = convertCtoF(parseFloat(cel.value));
    document.getElementById("fah").value = newTemp;
})

额外优化建议:

  • 确保convertCtoF函数实现了正确的转换公式:华氏度 = 摄氏度 × 9/5 + 32
  • 可以增加空值/无效输入判断,避免NaN出现:
let convert = document.getElementById("convert")
convert.addEventListener("click", function(){
    let cel = document.getElementById("cel")
    let celValue = parseFloat(cel.value);
    if (!isNaN(celValue)) {
        let newTemp = convertCtoF(celValue);
        document.getElementById("fah").value = newTemp;
    } else {
        document.getElementById("fah").value = ""; // 或提示用户输入有效数字
    }
})

内容的提问来源于stack exchange,提问作者Fancyson

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 00:29:56