无法从匿名函数返回值

时间:2019-07-16 01:28:18

标签: javascript jquery function scope

我正在编写一个计算器程序,该程序允许用户通过按下ON按钮打开计算器。这将触发一个将变量calcStatus更改为true并显示一条临时消息的函数。但是,如果我第二次按下“打开”按钮,则即使显示calcStatus的值应为true,显示临时消息的功能也会运行。我究竟做错了什么? (我在某处读到这称为匿名函数,因此可能导致了问题)

我还可以高效地执行此操作吗?还是有一种更好的方式编写我现在拥有的代码?

$(function(){

    function main(calcStatus){
        if (calcStatus == true) {
            // WILL RUN IF CALCULATOR IS ON
        }
        else {
            $('.button_on').click(function(){
                calcStatus = true;

                $('.screen_text').html("CALC ON");
                setTimeout(function(){
                    $('.screen_text').html("");
                }, 500);
                return calcStatus;
            });
        }
    }

    main(false);
})

预先感谢您的帮助!这是我第一次发布问题,希望我做对了!

0 个答案:

没有答案