文章詳情頁
javascript - 這段js代碼是怎么理解?
瀏覽:130日期:2023-05-17 14:07:32
問題描述
我的疑惑是把這個函數包起來的括號是啥意思,閉包?然后還在方法后面的這個(1)是將參數1帶入這個匿名方法?這個小括號的詞法是執行的意思還是隔離方法?
問題解答
回答1:立即執行的意思,傳入參數1
(function(x){})(1)回答2:
這是一個立即執行函數,立即執行函數構造了一個函數作用域,可以起到隔離的作用,避免污染全局作用域,傳入1是傳入參數,立即執行函數與可以用于解決閉包問題。但是和閉包并沒有直接聯系。
回答3:匿名函數沒有函數名,無法調用,括號把函數聲明括起來,就不再是一個函數聲明,而是一個函數表達式。后面加()也就是是立即執行該函數,1是參數,由里面的x來接收。你可以理解為
var foo = function(x){ delete x; return x;};foo(1);
標簽:
JavaScript
相關文章:
排行榜
