js變數提公升

2021-08-20 02:39:19 字數 485 閱讀 6591

在了解變數提公升之前,應該先了解一下js到底是一種什麼型別的語言,他的執行機制又是怎樣的.

console.log(global); // undefined

var global = 'global';

console.log(global); // global

function fn ()

fn();

可以看出來 變數提公升只是將變數提前在頂部宣告,但是賦值還是在**本身的位置、

函式提公升:

js中建立函式有兩種方式:函式宣告式和函式字面量式。只有函式宣告才存在函式提公升!如:

console.log(f1); // function f1() {}   

console.log(f2); // undefined

function f1() {}

var f2 = function() {}

js變數提公升

var a 100 functionf console.log a f undefined 200var a 100 functionf f console.log a 100如果你習慣了強型別語言的程式設計方式,那麼看到上述輸出結果你肯定會大吃一驚。我們來看一下c 的乙個例子 include us...

JS變數提公升

在當前作用域中,js 自上而下執行之前,瀏覽器首先會把所有的帶var function關鍵字的進行提前宣告 定義。注意宣告和定義的區別 宣告 declare var num 在當前作用域中吼一嗓子我有num這個名字了。定義 define num 12 把宣告的名字賦值。console.log a u...

js變數提公升

function say say 在js中,瀏覽器在執行 前會有一次預編譯,這個過程會把函式宣告和變數宣告提公升到作用域的頂端,並賦值undefind,這個過程就叫提公升 並且在js中,函式是一等公民,優先順序是最高的,稍後會解釋 這就不難理解剛才那道題了,上面的 編譯後如下 function sa...