页面中多个script块之间方法与变量共享问题


JS是按照代码块来进行编译和执行的,代码块间相互独立,但变量和方法共享,按顺序执行。

如:

<script type='text/javascript'>
    var m = 0,n = 1,i = 2,j;
    alert(q);//没有输出,因为q是下一个script的全局变量,script块按顺序执行,将两个script块交换位置可能会出错
    function num(){
        i = 3;
        var p = 4;//p在方法内为局部变量
        alert('ok');
    }
</script>
<script type='text/javascript'>
    var q = 5;
    alert(m);//输出0
    num();//输出ok
    alert(i);//此处为全局变量,但值已经被修改,输出3
    alert(j);//输出undefined,因为没有为j赋值
    alert(p);//没有输出,因为p是上一个script的局部变量
</script>

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM