国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

立即表達式的多種寫法與注意點以及in操作符的作用

meislzhua / 875人閱讀

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

1 //報錯, 1被當做函數(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" ) })()

上例為正確的做法

二、下面這種寫法,兩個立即表達式, 沒有用分號隔開,同樣產(chǎn)生歧義,報錯

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

正確的寫法:

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

小結(jié):當使用立即表達式, 應(yīng)該在他的前面加上分號, 在代碼壓縮的時候就不會出錯

in操作符: 判斷屬性是否在一個對象或者他的原型上

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)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/84799.html

相關(guān)文章

  • 20170822 前端開發(fā)日報

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

    raoyi 評論0 收藏0
  • 20170822 前端開發(fā)日報

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

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

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

    Ajian 評論0 收藏0
  • 〔總結(jié)〕容易遺忘JS知識整理

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

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

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

    LittleLiByte 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<