欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

深入淺析JavaScript函數(shù)前面的加號(hào)和嘆號(hào)

 更新時(shí)間:2016年07月09日 16:57:07   作者:微個(gè)日光日  
這篇文章主要介紹了深入淺析JavaScript函數(shù)前面的加號(hào)和嘆號(hào)的相關(guān)資料,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下

+function(){}(); 

這里的加號(hào),也可以替換成!,~等其他一元操作符,其效果相當(dāng)于:

(function() { console.log("Foo!"); })(); 
// or 
(function() { console.log("Foo!"); }()); 

如果沒(méi)有這個(gè)加號(hào)的話,解析器會(huì)認(rèn)為function是一個(gè)函數(shù)聲明的開(kāi)始,而后面()將會(huì)導(dǎo)致語(yǔ)法錯(cuò)誤。在function前面加上+號(hào)時(shí),就變成了一個(gè)函數(shù)表達(dá)式,而函數(shù)表達(dá)式后面又添加了一個(gè)()就變成了一個(gè)立即執(zhí)行的函數(shù)了。

下面看下js函數(shù)前面感嘆號(hào)的作用:

一、JS函數(shù)聲明形式

function fnA(){alert('msg');} //聲明式定義函數(shù) 

二、JS函數(shù)表達(dá)式形式

var func = function(agr1,arg2){ //創(chuàng)建匿名函數(shù)
alert(arg1 + ' ' + arg2);
} 

三、JS匿名函數(shù)聲明完立即執(zhí)行的常見(jiàn)格式

(function() { /* code */ })();

說(shuō)明

1、包圍函數(shù)(function(){})的第一對(duì)括號(hào)向腳本返回未命名的函數(shù),隨后一對(duì)空括號(hào)立即執(zhí)行返回的未命名函數(shù),括號(hào)內(nèi)為匿名函數(shù)的參數(shù)。

2、使用括號(hào)包裹定義函數(shù)體,解析器將會(huì)以函數(shù)表達(dá)式的方式去調(diào)用定義函數(shù)。也就是說(shuō),任何能將函數(shù)變成一個(gè)函數(shù)表達(dá)式的作法,都可以使解析器正確的調(diào)用定義函數(shù)。而 ! 就是其中一個(gè),而 + - || 都有這樣的功能。

3、該函數(shù)的作用主要為 匿名 和 自動(dòng)執(zhí)行

相關(guān)文章

  • JavaScript中yield實(shí)用簡(jiǎn)潔實(shí)現(xiàn)方式

    JavaScript中yield實(shí)用簡(jiǎn)潔實(shí)現(xiàn)方式

    原以為是一個(gè)蠻復(fù)雜的題目,想了許久沒(méi)思路,當(dāng)然要實(shí)現(xiàn)絕對(duì)能實(shí)現(xiàn),但如果分析JavaScript腳本或是動(dòng)態(tài)產(chǎn)生代碼,都太復(fù)雜了。
    2010-06-06
  • JS實(shí)現(xiàn)輪播圖小案例

    JS實(shí)現(xiàn)輪播圖小案例

    這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)輪播圖小案例,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 編輯浪子版表單驗(yàn)證類

    編輯浪子版表單驗(yàn)證類

    編輯浪子版表單驗(yàn)證類...
    2007-05-05
  • 淺談javascript原型鏈與繼承

    淺談javascript原型鏈與繼承

    這篇文章主要介紹了淺談javascript原型鏈與繼承的相關(guān)資料,需要的朋友可以參考下
    2015-07-07
  • JS實(shí)現(xiàn)可展開(kāi)折疊層的鼠標(biāo)拖曳效果

    JS實(shí)現(xiàn)可展開(kāi)折疊層的鼠標(biāo)拖曳效果

    這篇文章主要介紹了JS實(shí)現(xiàn)可展開(kāi)折疊層的鼠標(biāo)拖曳效果,具有展開(kāi)折疊層及實(shí)時(shí)顯示鼠標(biāo)坐標(biāo)位置的功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-10-10
  • Json格式詳解

    Json格式詳解

    JSON(JavaScript Object Notation) 是一種輕量級(jí)的數(shù)據(jù)交換格式。JSON采用完全獨(dú)立于語(yǔ)言的文本格式,這些特性使JSON成為理想的數(shù)據(jù)交換語(yǔ)言。易于人閱讀和編寫,同時(shí)也易于機(jī)器解析和生成
    2021-11-11
  • 小程序?qū)崿F(xiàn)簡(jiǎn)單吸頂效果

    小程序?qū)崿F(xiàn)簡(jiǎn)單吸頂效果

    這篇文章主要為大家詳細(xì)介紹了小程序?qū)崿F(xiàn)簡(jiǎn)單吸頂效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 微信小程序?qū)崿F(xiàn)動(dòng)態(tài)改變view標(biāo)簽寬度和高度的方法【附demo源碼下載】

    微信小程序?qū)崿F(xiàn)動(dòng)態(tài)改變view標(biāo)簽寬度和高度的方法【附demo源碼下載】

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)動(dòng)態(tài)改變view標(biāo)簽寬度和高度的方法,涉及微信小程序事件響應(yīng)及使用setData針對(duì)data數(shù)據(jù)動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2017-12-12
  • javascript特殊日歷控件分享

    javascript特殊日歷控件分享

    這篇文章主要為大家詳細(xì)介紹了javascript特殊日歷控件的使用方法,展示了javascript日歷控件實(shí)現(xiàn)效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-03-03
  • Javascript中Math.max和Math.max.apply的區(qū)別和用法詳解

    Javascript中Math.max和Math.max.apply的區(qū)別和用法詳解

    這篇文章主要介紹了Javascript中Math.max和Math.max.apply的區(qū)別和用法,本文給大家啊介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-08-08

最新評(píng)論