作用域 變數 函式 重點 面試必看

2021-10-05 10:41:25 字數 1683 閱讀 2858

一、變數作用域

作用域:變數或者函式可訪問範圍

全域性作用域:在全域性作用域下宣告的變數,可以在任意合法位置訪問到。

函式作用域:在函式中使用var 宣告的變數,只能在函式內部訪問到。

//a是全域性作用域下的變數,可以在任意合法位置訪問

var a =1;

functionfn(

)console.

log(a)

;//1fn(

);//1 2

//函式內使用var宣告的變數不能被外部訪問

console.

log(b)

;

function

fun(

)fun()

;console.

log(c)

;//30

function

myfun()

// 呼叫函式,執行函式體**

myfun()

;console.

log(d)

;//4

變數的提公升

js程式執行前,當前作用域下使用var宣告的變數,會將宣告提公升到最前面,但是賦值還是在原來的位置。

//先檢查當前作用域,使用var宣告的變數,把宣告提公升到最前邊,賦值還是在位置

var a;

//undefined;

console.

log(a)

;//undefined;

var a =1;

//a = 1;

console.

log(a)

;var b =10;

//先提公升b(var b;),然後列印b為未定義。

functionfn(

)fn()

;var b =10;

functionfn(

)fn()

;var c =5;

function

fun(c)

fun(7)

;console.

log(c)

;//5

乙個函式作用域 下被外部函式呼叫,可以使用閉包

和變數作用域一樣,也分為全域性作用域和函式作用域

函式宣告提公升

和變數提公升一樣,使用function關鍵字建立的函式,宣告也會提公升到所在作用域最前邊。在任意合法位置都可以呼叫。

//在全域性作用域下建立的函式

functionfn(

)fn()

;//在函式作用域下建立函式

function

fun(

)fun1()

;//fun1只能在當前的作用域下呼叫

}fun()

;//3

//函式作用域下的函式不能被外部呼叫,只能在當前作用域下呼叫。

fun1()

;//uncaught referenceerror: fun1 is not defined

//乙個函式作用域下被外部函式呼叫,可以使用閉包

myfun()

;function

myfun()

函式 引數 變數作用域

一 函式引數 1.必須引數 必需引數須以正確的順序傳入函式。呼叫時的數量必須和宣告時的一樣。呼叫printme 函式,你必須傳入乙個引數,不然會出現語法錯誤 小括號內的就是引數 小括號內沒東西叫做無參,有叫有參 求任意三個數之和 在定義函式的時候小括號內寫的是變數名字,不需要賦值 在呼叫函式的時候小...

作用域,變數作用域,作用域鏈知識

第2章 變數作用域 第3章 作用域鏈 預覽 1.全域性作用域 整個script標籤下 或者是單獨的js檔案 外部js 2.區域性作用域也叫 函式作用域 在函式內部就是區域性作用域 這個 的名字 變數 只在函式內部起作用和效果 3.不同作用域下,定義相同變數名是不衝突的。如果是在同一作用域宣告2個相同...

變數作用域

python任何變數都有其特定的作用域 在函式內部的變數一般只能在函式內部使用,這些只能在程式特定的區域使用的變數稱為區域性變數.在乙個檔案頂部,在函式的外部定義的變數,可以供該檔案的任何函式呼叫,這樣的變數稱為全域性變數 區域性變數和全域性變數的關係 區域性變數可以通過global關鍵字強制宣告為...