js宣告變數和函式的優先順序

2021-10-05 22:12:35 字數 667 閱讀 9227

一,變數

var a=『123』;

console.log(a);

控制台會輸出123

那麼console.log(a);

var a=『123』;

控制台會輸出undefined,而不是報錯

因為js宣告變數會優先執行,實際上**是這樣執行的:

var a;

console.log(a);

a = 『123』;

賦值不會優先的,所以控制台會輸出undefined

二,函式

1.第一種申明方式

func();

function func()

執行這段**控制台會輸出qqq

應為函式的申明也是優先執行的

2.第二種

func();

var func = function()

執行這段**控制台會輸出undefined is not a function

因為js宣告變數會優先執行,實際上**是這樣執行的:

var fun;

func();

func = function()

問:func(a);

function func(a)

var a = 123;

這個會輸出什麼呢?變數和函式宣告誰的優先順序高呢?

JS中的變數宣告提公升與函式宣告提公升優先順序

今天在群裡看到了一道題,如下。問輸出什麼?var c 1 function c c c 3 看到的第一眼,第一想法就是這題考察的是變數提公升,唔,應該是輸出undefined。結果不對,報錯了 為啥呢?原來在乙個作用域中,變數宣告是有順序的 函式形參宣告 函式宣告 變數宣告 任何一種宣告,如果在前面...

C宣告的優先順序規則

c宣告的優先順序規則 a 宣告從它的名字開始讀取,然後按照優先順序順序依次讀取 b 優先順序從高到低依次是 b.1 宣告中被括號括起來的那部分 b.2 字尾操作符 括號 表示這是乙個函式,而方括號 表示這是乙個陣列 b.3 字首操作符 星號 表示 指向 的指標 c 如果const和 或 volati...

css中宣告的優先順序

1.css宣告的優先順序 選擇器的特殊性 有選擇器本身的元件確定,特殊值表述為4個部分,如 0,0,0,0。內聯宣告 1,0,0,0.style id選擇器 0,1,0,0.類選擇器 0,0,1,0.元素選擇器 0,0,0,1.萬用字元選擇器 0,0,0,0.結合符選擇器沒有貢獻 繼承沒有特殊性 重...