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

无法调用后续声明的函数?计算器开发参数传递问题已解决

解决计算器开发中函数无法正确触发后续声明函数的问题

最近做作业开发计算器时踩了个坑:我的inNum函数需要调用后面声明的清除输入的函数,但怎么都触发不了目标分支。当时的代码片段大概是这样的:

function inNum(num) { 
  if(arrHistory.indexOf('=') != -1) { 
    action(ac); 
  } 
  (entry.length === 1 && entry[0] === 0) ? entry[0] = num: typeof entry[0] == 'string' ? entry = [num] : /* 后续逻辑 */
}

后来终于搞懂哪里错了!多亏@floor的提醒:我调用action(ac)的时候,传的是变量ac的引用,但实际上要触发清除的目标分支,得传字符串'ac'才行。

把调用改成下面这样就完全正常了:

action('ac');

说白了就是把变量引用和字符串参数搞混了,这个小细节差点卡了我好久😂

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 06:58:23