为什么将变量定义在count()函数外,功能无法实现?

来源:6-11 编程练习

garnett555

2016-04-22 16:52

 <script type="text/javascript">
   
       
    //获取第一个输入框的值
    var txt1=parseInt(document.getElementById("txt1").value);
	//获取第二个输入框的值
    var txt2=parseInt(document.getElementById("txt2").value);
	//获取选择框的值
    var select=document.getElementById("select").value;
	//获取通过下拉框来选择的值来改变加减乘除的运算法则
        function count(){
        switch(select)
        {
            case"1":
                document.getElementById("fruit").value=txt1+txt2;
                break;
            case"-":
                document.getElementById("fruit").value=txt1-txt2;
                break;
            case"*":
                document.getElementById("fruit").value=txt1*txt2;
                break;
            case"/":
                document.getElementById("fruit").value=txt1/txt2;
                break;
        }
        
    //设置结果输入框的值 
  
   }
  </script>

如题,代码如上。

写回答 关注

3回答

  • 比克小魔王
    2016-04-22 18:14:49

    因为你的值是在方法外取的,在你写的方法里面是获取不到你在方法外写的值

    李狗带 回复garnet...

    全局变量 你也知道 是变量 而不是 值或者函数 ok!!???

    2016-04-23 09:06:25

    共 2 条回复 >

  • 李狗带
    2016-04-22 17:56:11

    格式 啊 宝宝  你记得哦    函数所有的表达式一定写在{}中间 参数一定写在()中 就这么简单 你学会了吗

  • 李狗带
    2016-04-22 17:55:23

    到你调用函数的时候  你调用的是函数里面的 数据  你的表达式写外边默认为全局的一个表达式 你调用的时候 跟他们根本没关系啊 你怎么会得到结果呢

    李狗带 回复garnet...

    拜托 外边的是表达式 不是 变量啊 孩子 那个表达式和这个函数层级是并列的啊是一个全局中的合法公民 而不是函数中的奴隶 ok?

    2016-04-23 09:05:23

    共 2 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468194 学习 · 21891 问题

查看课程

相似问题