js中三種作用域詳解(全域性,函式,塊級)

2021-08-13 03:19:53 字數 767 閱讀 6718

1.

全域性變數:宣告在函式外部的變數(所有沒有

var直接賦值的變數都屬於全域性變數) 2.

區域性變數:宣告在函式內部的變數(所有沒有

var直接賦值的變數都屬於全域性變數) js

中變數申明分顯式申明和隱式申明。

vari=100;//

顯式申明

i=100;//

隱式申明

在函式中使用

var關鍵字進行顯式申明的變數是做為區域性變數,而沒有用

var關鍵字,使用直接賦值方式宣告的是全域性變數。  

當我們使用訪問乙個沒有宣告的變數時,

js會報錯。而當我們給乙個沒有宣告的變數賦值時,

js不會報錯,相反它會認為我們是要隱式申明乙個全域性變數,這一點一定要注意。

全域性作用域針對於全域性變數來說;

1 全域性變數在整個上下文都有效只是在沒有賦值之前呼叫,會輸出

undefin

函式作用域是針對區域性變數來說的,在函式中定義的變數在函式外不能獲取

1 function

test()   6 

// alert(a);

報錯,外部獲取不到 7 

8 test();   9 

//alert(a);

儲存不能輸出

塊級作用域

概念「{}」

中間的部分都是塊級作用域ex:

for while if ,js

中沒有塊級作用域,但是可以用閉包實現類似功能。

Js 函式作用域和塊作用域

你不知道的js 第二版上捲第三章筆記 全域性作用域 定義在函式外部的變數,函式內部可以呼叫 區域性作用域 定義在函式內部的變數,函式外部不可以呼叫 塊級作用域 如同下面這個例子 for var i 1 i 10 i console.log i,b 輸出的還是 10 100!說明js沒有塊級作用域當我...

全域性作用域 函式作用域 塊級作用域的理解

作用域是任何一門程式語言中的重中之重,因為它控制著變數與引數的可見性與生命週期。很慚愧,我今天才深入理解js的作用域.我不配做乙個程式設計師.開玩笑,什麼時候理解都不晚,重要的是理解了以後能不能深深地扎在記憶裡,不能,那就寫下來在乙個 塊 括在一對花括號中的一組語句 中定義的所有變數在 塊的外部是不...

js中三種物件意義

js中,可以將物件分為 內部物件 宿主物件 和 自定義物件 三種。內部物件 js中的內部物件包括array boolean date function global math number object regexp string以及各種錯誤類物件,包括error evalerror rangeer...