頁面中多個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刪除。



猜您在找 頁面中多個script塊之間的關系 Python 中多個線程之間是共享全局變量的 多個源文件共享同個變量的方法 全局變量在多個進程中不共享 多個jsp頁面共享一個js對象的超級方法 JavaScript全局變量的本質及頁面共享問題 JMeter中多個線程組之間的變量調用 block塊中引用成員變量引起內存泄漏問題 Vue總結第六天:Vuex (全局變量管理~多個頁面共享數據) 頁面中