哪位大师帮我解答一下,为什么全局变量放函数外不行?

来源:6-11 编程练习

bestMan

2019-06-10 15:37

<script>

var txt1=parseInt(document.getElementById("txt1").value);

var txt2=parseInt(document.getElementById("txt2").value);

var se=document.getElementById("vu").value;

var d;


function result(){

switch(se){

case "+":

d=txt1 + txt2;

break;


case "-":

d=txt1 - txt2;

break;


case "*":

d=txt1 * txt2;

break;


case "/":

d=txt1 / txt2;

break;

}

document.getElementById("sum").value=d;

}

</script>


<input type="text" id="txt1">

<select id="vu">

  <option value="+">+</option>

  <option value="-">-</option>

  <option value="*">*</option>

  <option value="/">/</option>

</select>

<input type="text" id="txt2">

<input type="button" value="=" onclick="result()">

<input type="text" id="sum">



写回答 关注

2回答

  • 慕尼黑0535884
    2019-06-12 17:56:40
    已采纳

    觉得是 onclick绑定的是result()函数,而你的变量并没有在里边,所以没有执行get和赋值

    自己的见解~不知道对不对

    bestMa... 回复慕尼黑053...

    开始执行了一遍text中的value值后,再执行onclick绑定的函数时外面的全局变量就不执行了,原来是这样的原理

    2019-06-14 17:43:19

    共 5 条回复 >

  • 小饼干要自信
    2019-06-28 11:02:54

    var声明的是局部变量的关键字,js的局部变量作用域是以函数为单位,你定义到函数外面,在函数内部调用是不行的

JavaScript进阶篇

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

468194 学习 · 21891 问题

查看课程

相似问题