javascript
JavaScript中的this用法
最近看了許多JavaScript源代碼,發現this經常出現,于是對this這個非常特殊的關鍵詞標識符進行總結。
題外話:
1、當函數被調用時,一個activation record【過程活動記錄 -- 一種數據結構】被創建,
?這個record包涵信息:函數在哪調用,函數怎么調用的,參數等等,
?record的一個屬性就是this,指向函數執行期間的this對象。
2、函數在被調用時都會自動取得兩個特殊變量,this和arguments
this在具體情況下的分析:
1、在全局上下文,this指向全局對象。
? ??
2、在函數內部時,this由函數怎么調用來確定。
(1)作為對象方法的調用
? ????
也可以這樣寫
?
?
(2)作為構造函數的調用
? ????
在構造函數(函數用new調用)中,this指向要被constructed的新對象。 ?即this指向實例化對象
3、apply調用
??apply()是函數對象的方法,其作用是改變函數的調用對象,它的第一個參數 表示改變后的調用的函數對象,即this指的就是第一個參數。
? ??
?apply()參數為空時,默認調用全局對象,可以看到,運行結果為 "Yori",證明this指向全局對象。
?apply()參數為b時,,可以看到,運行結果為 "bentos",證明this指向對象b。
?
?
?
轉載于:https://www.cnblogs.com/wuyongyu/p/5756626.html
總結
以上是生活随笔為你收集整理的JavaScript中的this用法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 拍拍贷流标是什么意思
- 下一篇: iOS开发多线程篇—多线程简单介绍