您好,登錄后才能下訂單哦!
本文小編為大家詳細介紹“js全局變量和php全局變量的區別有哪些”,內容詳細,步驟清晰,細節處理妥當,希望這篇“js全局變量和php全局變量的區別有哪些”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。
js全局變量和php全局變量的區別:PHP在函數中調用全局變量需要利用global關鍵字,該關鍵字是用來導入全局變量的,而在js中調用全局變量則不需要利用關鍵字。
本文操作環境:Windows10系統、PHP7.1版、Dell G3電腦。
PHP global 關鍵詞
global 關鍵詞用于在函數內訪問全局變量。
要做到這一點,請在(函數內部)變量前面使用 global 關鍵詞:
實例
<?php $x=5; $y=10; function myTest() { global $x,$y; $y=$x+$y; } myTest(); echo $y; // 輸出 15 ?>
js全局變量
JS中聲明全局變量主要分為顯式聲明或者隱式聲明下面分別介紹。
聲明方式一:
使用var(關鍵字)+變量名(標識符)的方式在function外部聲明,即為全局變量,否則在function聲明的是局部變量。該方式即為顯式聲明詳細如下:
var test = 5; //全局變量 function a() { var cc=3; //局部變量 alert(test); } function b(){alert(test);}
聲明方式二:
沒有使用var,直接給標識符test賦值,這樣會隱式的聲明了全局變量test。即使該語句是在一個function內,當該function被執行后test變成了全局變量。
test = 5;//全局變量 function a() { aa=3; //全局變量 alert(test); }
js全局變量的優點:
可以減少變量的個數,減少由于實際參數和形式參數的數據傳遞帶來的時間消耗。
js全局變量的缺點:
(1)全局變量保存在靜態存貯區,程序開始運行時為其分配內存,程序結束釋放該內存。與局部變量的動態分配、動態釋放相比,生存期比較長,因此過多的全局變量會占用較多的內存單元。
(2)全局變量破壞了函數的封裝性能。函數象一個黑匣子,一般是通過函數參數和返回值進行輸入輸出,函數內部實現相對獨立。但函數中如果使用了全局變量,那么函數體內的語句就可以繞過函數參數和返回值進行存取,這種情況破壞了函數的獨立性,使函數對全局變量產生依賴。同時,也降低了該函數的可移植性。
(3)全局變量使函數的代碼可讀性降低。由于多個函數都可能使用全局變量,函數執行時全局變量的值可能隨時發生變化,對于程序的查錯和調試都非常不利。
因此,如果不是萬不得已,最好不要使用全局變量。
讀到這里,這篇“js全局變量和php全局變量的區別有哪些”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。