成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

立即表達(dá)式的多種寫法與注意點(diǎn)以及in操作符的作用

meislzhua / 880人閱讀

摘要:立即表達(dá)式,在中非常常見,采用立即表達(dá)式可以形成一個(gè)局部作用域,常配合閉包實(shí)現(xiàn)模塊化編程等其他用途,接下來我們看看,在大多數(shù)的框架中,立即表達(dá)式都有哪些寫法,以及需要注意的點(diǎn),另外再介紹下操作符的用法通過小括號(hào)把函數(shù)聲明變成表達(dá)式,然后再外

立即表達(dá)式,在javascript中非常常見, 采用立即表達(dá)式可以形成一個(gè)局部作用域, 常配合閉包實(shí)現(xiàn)模塊化編程等其他用途,接下來我們看看,在大多數(shù)的框架中,立即表達(dá)式都有哪些寫法,以及需要注意的點(diǎn),另外再介紹下in操作符的用法

1、 通過小括號(hào)把函數(shù)聲明變成表達(dá)式, 然后再外面加個(gè)小括號(hào) 就可以達(dá)到立即調(diào)用的效果

1         (function(){
2             console.log( "ghostwu" );
3         })();

2、!號(hào) 把函數(shù)聲明轉(zhuǎn)化成表達(dá)式,再調(diào)用

1         !function(){
2             console.log( "ghostwu" );
3         }();

3、+號(hào) 把函數(shù)聲明轉(zhuǎn)化成表達(dá)式,再調(diào)用

1         +function(){
2             console.log( "ghostwu" );
3         }();

4、-號(hào) 把函數(shù)聲明轉(zhuǎn)化成表達(dá)式,再調(diào)用

1         -function(){
2             console.log( "ghostwu" );
3         }();

5、波浪符 把函數(shù)聲明轉(zhuǎn)表達(dá)式,再調(diào)用

1         ~function(){
2             console.log( "ghostwu" );
3         }();

6、把調(diào)用寫在表達(dá)式里面

1         (function(){
2             console.log( "ghostwu" );
3         }());

使用立即表達(dá)式,需要注意的地方:

一、1被當(dāng)做函數(shù)調(diào)用, 原因在與 沒有用分號(hào) 把語句隔斷,產(chǎn)生歧義

1 //報(bào)錯(cuò), 1被當(dāng)做函數(shù) 1()
2         var n = 1
3         (function(){ console.log( "ghostwu" ) })()

1         var n = 1;
2         // (function(){ console.log( "ghostwu" ) })()
3         ;(function(){ console.log( "ghostwu" ) })()

上例為正確的做法

二、下面這種寫法,兩個(gè)立即表達(dá)式, 沒有用分號(hào)隔開,同樣產(chǎn)生歧義,報(bào)錯(cuò)

1          (function(){ console.log("ghostwu1") })()
2         (function(){ console.log("ghostwu2") })()

正確的寫法:

1         ;(function(){ console.log("ghostwu1") })()
2         ;(function(){ console.log("ghostwu2") })()

小結(jié):當(dāng)使用立即表達(dá)式, 應(yīng)該在他的前面加上分號(hào), 在代碼壓縮的時(shí)候就不會(huì)出錯(cuò)

in操作符: 判斷屬性是否在一個(gè)對(duì)象或者他的原型上

1         function CreateObj(){
2             // this.name = "ghostwu"; //true
3         }
4         CreateObj.prototype.name = "ghostwu"; //true
5         var obj = new CreateObj();
6         console.log( "name" in obj );
1         var myObj = {
2             age : 22
3         };
4         console.log( "age" in myObj ); //true
5         console.log( "sex" in myObj ); //false

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/84799.html

相關(guān)文章

  • 20170822 前端開發(fā)日?qǐng)?bào)

    摘要:如果沒有學(xué)習(xí)過計(jì)算機(jī)科學(xué)的程序員,當(dāng)我們?cè)谔幚硪恍﹩栴}時(shí),比較熟悉的數(shù)據(jù)結(jié)構(gòu)就是數(shù)組,數(shù)組無疑是一個(gè)很好的選擇。 幾種 JavaScript 動(dòng)畫庫推薦 JavaScript 庫對(duì)設(shè)計(jì)師和開發(fā)人員來說,都是非常有用的工具。它們可以為你的網(wǎng)站添加一些超級(jí)強(qiáng)大的功能,給用戶帶來更好的體驗(yàn)。 2017年8月前端開發(fā)者超實(shí)用干貨大合集 在過去的幾年當(dāng)中,網(wǎng)絡(luò)上所流傳的各種設(shè)計(jì)和開發(fā)資源,在素質(zhì)...

    raoyi 評(píng)論0 收藏0
  • 20170822 前端開發(fā)日?qǐng)?bào)

    摘要:如果沒有學(xué)習(xí)過計(jì)算機(jī)科學(xué)的程序員,當(dāng)我們?cè)谔幚硪恍﹩栴}時(shí),比較熟悉的數(shù)據(jù)結(jié)構(gòu)就是數(shù)組,數(shù)組無疑是一個(gè)很好的選擇。 幾種 JavaScript 動(dòng)畫庫推薦 JavaScript 庫對(duì)設(shè)計(jì)師和開發(fā)人員來說,都是非常有用的工具。它們可以為你的網(wǎng)站添加一些超級(jí)強(qiáng)大的功能,給用戶帶來更好的體驗(yàn)。 2017年8月前端開發(fā)者超實(shí)用干貨大合集 在過去的幾年當(dāng)中,網(wǎng)絡(luò)上所流傳的各種設(shè)計(jì)和開發(fā)資源,在素質(zhì)...

    olle 評(píng)論0 收藏0
  • javascript面向?qū)ο?em>的常見寫法優(yōu)缺點(diǎn)

    摘要:我們通過表單驗(yàn)證的功能,來逐步演進(jìn)面向?qū)ο蟮姆绞綄?duì)于剛剛接觸的朋友來說,如果要寫一個(gè)驗(yàn)證用戶名,密碼,郵箱的功能,一般可能會(huì)這么寫表單驗(yàn)證全局全局全局這種寫法,從功能上來說沒有什么問題,但是在團(tuán)隊(duì)協(xié)作的時(shí)候,會(huì)造成覆蓋全局變量的問題,那要大 我們通過表單驗(yàn)證的功能,來逐步演進(jìn)面向?qū)ο蟮姆绞? 對(duì)于剛剛接觸javascript的朋友來說,如果要寫一個(gè)驗(yàn)證用戶名,密碼,郵箱的功能, 一...

    Ajian 評(píng)論0 收藏0
  • 〔總結(jié)〕容易遺忘JS知識(shí)點(diǎn)整理

    摘要:命名函數(shù)的賦值表達(dá)式另外一個(gè)特殊的情況是將命名函數(shù)賦值給一個(gè)變量。這是由于的命名處理所致,函數(shù)名在函數(shù)內(nèi)總是可見的。當(dāng)需要向回調(diào)函數(shù)傳遞參數(shù)時(shí),可以創(chuàng)建一個(gè)匿名函數(shù),在函數(shù)內(nèi)執(zhí)行真實(shí)的回調(diào)函數(shù)。 1.hasOwnProperty相關(guān) 為了判斷一個(gè)對(duì)象是否包含自定義屬性而不是原型鏈上的屬性,我們需要使用繼承自 Object.prototype 的 hasOwnProperty方法。has...

    explorer_ddf 評(píng)論0 收藏0
  • Python 2.x Python 3.x 區(qū)別

    摘要:官方也宣布在停止對(duì)的維護(hù)。并且在很多面試過程中,面試官都會(huì)問與的區(qū)別。的版本,常被稱為,或簡(jiǎn)稱。與部分地支持這種形式的語法。捕獲異常的語法由改為。在中,表示八進(jìn)制字面量的方式只有一種,就是。已經(jīng)支援新的模組。 前言 如果你是剛接觸 Python 的初學(xué)者,那你可能是直接學(xué)習(xí) Python 3.x 版本。對(duì)于 Python 2.x 的版本是不會(huì)有所接觸。官方也宣布在 2020 停止對(duì) P...

    LittleLiByte 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<