zoukankan      html  css  js  c++  java
  • 变量作用域问题2(部分变量未声明)

    例一

    var x=10;全局变量(开辟空间)
    function outer(){
    x=20;//此处未声明变量(未开辟空间),只给全局变量声明了,此处赋值会把全局变量开辟的存储空间的值替换掉(全局变量中的x替换成20)。
    function inner(){
    x=30;//此处未声明变量(未开辟空间),只给全局变量声明了,此处赋值会把全局变量开辟的存储空间的值替换掉(全局变量中的x替换成30)。
    alert(x);//3、输出x的值为30;
    }
    inner();//2.执行inner();
    alert(x);//4、输出x的值为30;
    }
    outer();//1.执行outer();
    alert(x);//5、输出x的值为30;
    //结果:30 30 30

    例二

    var x=10;//全局变量(开辟空间1)
    function outer(){
    var x=20;//局部变量(开辟空间2
    function innter(){
    x=30;//局部变量(未开辟空间),开辟空间2的x值被赋值为30
    alert(x);//3.弹出innter()的局部变量x=30;
    }
    innter();//2.执行函数innter()
    alert(x);//4.弹出outer()的局部变量x=30;
    }
    outer();//1、执行函数outer();
    alert(x);//5.弹出全局变量x=10;
    //结果:30 30 10

  • 相关阅读:
    洛谷P5281 [ZJOI2019] Minimax搜索
    势函数
    Comet OJ [Contest #5] 迫真大游戏
    洛谷P3307 [SDOI2013] 项链
    洛谷P5985 [PA2019] Muzyka pop
    CF1205E Expected Value Again
    review
    CF891E Lust
    线性代数
    洛谷P4607 [SDOI2018] 反回文串
  • 原文地址:https://www.cnblogs.com/paulirish/p/5768607.html
Copyright © 2011-2022 走看看