js 函式宣告

2021-07-29 21:27:39 字數 613 閱讀 4209

js函式宣告的兩種方式:

1.function functionname()//函式宣告

functionname=function()//函式表示式

這兩個方法之間的區別是重點!!!

第乙個會在所有**執行前被解析

第二個會在**被執行時執行

如: 例子1

function

functions

(flag)else

}

結果:b;

就是因為他們用的第一種方式宣告函式,所以會在執行之前被解析,所以此段**相當於

function

functions

(flag)

function

getvalue

()if(flag)

else

}

例子2

function

functions

(flag)

}else

}

這樣如果flag為true,返回a,

flag為false,返回b

JS變數宣告和函式宣告提公升

很多時候,在直覺上,我們都會認為js 在執行時都是自上而下一行一行執行的,但是實際上,有一種情況會導致這個假設是錯誤的。a 2 var a console.log a 按照傳統眼光,console.log a 輸出的應該是undefined,因為var a在a 2之後。但是,輸出的是2。再看第二段 ...

JS函式宣告提前 1

var a 10 function pay pay 7 console.log a 7 函式宣告提前 執行js 前,解析器將當前作用域內宣告的所有變數和函 數都會放到作用域的開始處 1 function pay 會提前宣告 2 var a 10 3 pay 執行函式 4 a 3 a首先會在自己的函式...

js中函式宣告提前

js中普通的變數會宣告提前外,函式也會宣告提前,不同的是由於函式的宣告有兩種方法,宣告提前的方式也就有兩種方式 1 通過 var fn function 定義函式,只是將函式名提前了,函式體沒有提前,如果在函式體前使用fn 呼叫函式就會報錯 fn varfn function 結果 報錯!uncau...