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

資訊專欄INFORMATION COLUMN

函數中的this 箭頭函數相關知識

馬永翠 / 2827人閱讀

摘要:情況如果一個函數中有,這個函數有被上一級的對象所調用,那么指向的就是上一級的對象。

函數中 this -->普通函數中this 不是看它定義時候所處的對象 誰調用它this就是誰

普通函數中 this 是什么?

任何函數本質上都是通過某個對象來調用的,如果沒有直接指定就是window

所有函數內部都有一個變量this

它的值是調用函數的當前對象

如何確定this的值?

test(): window

p.test(): p

new test(): 新創建的對象(準確說不是p 但p最后是指向這個對象的) var p = new test()

p.call(obj): obj

//

情況1:如果一個函數中有this,但是它沒有被上一級的對象所調用,那么this指向的就是window,
這里需要說明的是在js的嚴格版中this指向的不是window,但是我們這里不探討嚴格版的問題,你想了解可以自行上網查找。

  情況2:如果一個函數中有this,這個函數有被上一級的對象所調用,那么this指向的就是上一級的對象。

  情況3:如果一個函數中有this,這個函數中包含多個對象,盡管這個函數是被最外層的對象所調用,this指向的也只是它上一級的對象

var o = {

a:10,
b:{
    // a:12,
    fn:function(){
        console.log(this.a); //undefined
    }
}

}
o.b.fn();
盡管對象b中沒有屬性a,這個this指向的也是對象b,因為this只會指向它的上一級對象,不管這個對象中有沒有this要的東西。

//
var o = {

a:10,
b:{
    a:12,
    fn:function(){
        console.log(this.a); //undefined
        console.log(this); //window
    }
}

}
var j = o.b.fn;
j();

**this永遠指向的是最后調用它的對象,也就是看它執行的時候是誰調用的,例子中雖然函數fn是被對象b所引用,
但是在將fn賦值給變量j的時候并沒有執行所以最終指向的是window**

箭頭函數的特點:

1、簡潔
2、箭頭函數沒有自己的this,箭頭函數的this不是調用的時候決定的,而是在定義的時候處在的對象就是它的this

3、擴展理解: 箭頭函數的this看外層的是否有函數,

    如果有,外層函數的this就是內部箭頭函數的this,( 如果它的外層也是箭頭函數,則繼續向外找)
    如果沒有,則this是window。
    

作用: 定義匿名函數

基本語法:

沒有參數: () => console.log("xxxx")

一個參數: i => i+2

大于一個參數: (i,j) => i+j

函數體不用大括號: 默認返回結果

函數體如果有多個語句, 需要用{}包圍,若有需要返回的內容,需要手動返回

使用場景: 多用來定義回調函數

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/101579.html

相關文章

  • TypeScript學習6-函數

    摘要:類型聲明中的函數定義,需要聲明參數和返回值的類型。其中隱藏有一個點類型推斷,箭頭函數沒有聲明返回值類型,這里編譯器不會報錯,因為它可以推斷出返回值類型。 引言 TypeScript中的函數和JavaScript中的函數,和其他特性相比,是相差不大的。 這里會補充一點進階知識。 函數相關的知識點 下面列舉一些TypeScript中函數相關的知識點。 類型聲明 TypeScript中的函...

    fuyi501 評論0 收藏0
  • javascript this的學習總結

    摘要:例如通過,調用時強制把它的綁定到上。箭頭函數問題箭頭函數體內的對象就是定義時所在的對象,而不是使用時所在的對象,固定不變。 剛入門javascript,關于this的學習,花了自己挺多的時間,做了比較多的功課,看了一篇又一篇的文章,也看了一些書籍,今天就結合看的那些東西總結下自己所學到的東西,方便留著以后回看,進一步的學習,這篇文章會不斷的更新,不斷的更新自己的想法,現在還是一個入門不...

    A Loity 評論0 收藏0
  • 新手開發中常用ES6基礎知識總結

    摘要:感覺對我這種沒實習沒工作的新手,雖然一些高級的功能暫時用不上,但是一些基礎的知識還是為平時的開發提供了巨大的便利。學習告一段落,現在結合平時的開發,總結一些常用的知識。日常開發中,塊級作用域中使用的變量,盡量使用或者聲明。使用時,進行合并。 很早之前就學過TypeScript和ES6,后來做項目的時候零零散散用了些。這幾天又系統地把ES6的知識看了一遍。感覺對我這種沒實習沒工作的新手,...

    Paul_King 評論0 收藏0
  • 知識點小記

    摘要:箭頭函數我們來看一下箭頭函數的效果箭頭函數是無法通過來修改作用域的這個需要切記。所以切記在需要的時候使用箭頭函數。 這是一些小問題的記錄和總結: 1. vue serve和build 在vue-cli3.0中可以快速的開發原型。通過全局安全@vue/cli-service-global npm i -g @vue/cli-service-global 那么就可以使用vue serve ...

    shery 評論0 收藏0
  • JavaScript ES6相關的一些知識(/let、const/箭頭函數/Promise/gene

    摘要:的精髓在于,用維護狀態傳遞狀態的方式使得回調函數能夠及時調用,比傳遞要簡單靈活的其他方法用于指定發生錯誤時的回調函數,等同于部分和的區別在發生異常,在中捕獲不到能夠捕獲異常。 ES6是個啥 ECMAScript是國際通過的標準化腳本語言JavaScript由ES,BOM,DOM組成ES是JavaScript的語言規范,同時JavaScript是ES的實現和擴展6就是JavaScript...

    opengps 評論0 收藏0

發表評論

0條評論

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