摘要:前段時(shí)間回答的一個(gè)關(guān)于的問(wèn)題,便總結(jié)記錄下。在的函數(shù)中,除了聲明時(shí)定義的形參之外,每個(gè)函數(shù)還可以接收兩個(gè)附加的參數(shù)和。
前段時(shí)間回答的一個(gè)關(guān)于this的問(wèn)題,便總結(jié)記錄下。
在javascript的函數(shù)中,除了聲明時(shí)定義的形參之外,每個(gè)函數(shù)還可以接收兩個(gè)附加的參數(shù):this和arguments。這里就講一下this的作用以及不同場(chǎng)景下它的不同指向。this的取值(即它的指向取決于調(diào)用的模式),在javascript中明確this指向大致有四種情況:
1.函數(shù)調(diào)用模式的時(shí)候,this指向window
function aa(){ console.log(this) } aa() //window
2.方法調(diào)用模式的時(shí)候,this指向方法所在的對(duì)象
var a={}; a.name = "hello"; a.getName = function(){ console.log(this.name) } a.getName() //"hello"
3.構(gòu)造函數(shù)模式的時(shí)候,this指向新生成的實(shí)例
function Aaa(name){ this.name= name; this.getName=function(){ console.log(this.name) } } var a = new Aaa("kitty"); a.getName() // "kitty" var b = new Aaa("bobo"); b.getName() // "bobo"
4.apply/call調(diào)用模式的時(shí)候,this指向apply/call方法中的第一個(gè)參數(shù)
var list1 = {name:"andy"} var list2 = {name:"peter"} function d(){ console.log(this.name) } d.call(list1) // "andy" d.call(list2) // "peter"
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/90816.html
摘要:理解的函數(shù)基礎(chǔ)要搞好深入淺出原型使用原型模型,雖然這經(jīng)常被當(dāng)作缺點(diǎn)提及,但是只要善于運(yùn)用,其實(shí)基于原型的繼承模型比傳統(tǒng)的類繼承還要強(qiáng)大。中文指南基本操作指南二繼續(xù)熟悉的幾對(duì)方法,包括,,。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。 怎樣使用 this 因?yàn)楸救藢儆趥吻岸?,因此文中只看懂?8 成左右,希望能夠給大家?guī)?lái)幫助....(據(jù)說(shuō)是阿里的前端妹子寫的) this 的值到底...
摘要:和類在開始時(shí)遇到類組件,只是需要有關(guān)類的基礎(chǔ)。畢竟,中的條件呈現(xiàn)僅再次顯示大多數(shù)是而不是特定的任何內(nèi)容。 在我的研討會(huì)期間,更多的材料是關(guān)于JavaScript而不是React。其中大部分歸結(jié)為JavaScript ES6以及功能和語(yǔ)法,但也包括三元運(yùn)算符,語(yǔ)言中的簡(jiǎn)寫版本,此對(duì)象,JavaScript內(nèi)置函數(shù)(map,reduce,filter)或更常識(shí)性的概念,如:可組合性,可重用...
摘要:對(duì)象在中,除了數(shù)字字符串布爾值這幾個(gè)簡(jiǎn)單類型外,其他的都是對(duì)象。那么在函數(shù)對(duì)象中,這兩個(gè)屬性的有什么區(qū)別呢表示該函數(shù)對(duì)象的原型表示使用來(lái)執(zhí)行該函數(shù)時(shí)這種函數(shù)一般成為構(gòu)造函數(shù),后面會(huì)講解,新創(chuàng)建的對(duì)象的原型。這時(shí)的函數(shù)通常稱為構(gòu)造函數(shù)。。 本文原發(fā)于我的個(gè)人博客,經(jīng)多次修改后發(fā)到sf上。本文仍在不斷修改中,最新版請(qǐng)?jiān)L問(wèn)個(gè)人博客。 最近工作一直在用nodejs做開發(fā),有了nodejs,...
摘要:所以相同點(diǎn)是,在全局范圍內(nèi),全局變量終究是屬于老大的。只生效一次引入了。只生效一次在箭頭函數(shù)中,與封閉詞法環(huán)境的保持一致。我通常把這些原始函數(shù)叫做構(gòu)造函數(shù)。在里面你可以嵌套函數(shù),也就是你可以在函數(shù)里面定義函數(shù)。 showImg(https://img-blog.csdnimg.cn/20190522000008399.jpg?x-oss-process=image/watermark,...
摘要:原文許多人被中的關(guān)鍵字給困擾住了,我想混亂的根源來(lái)自人們理所當(dāng)然地認(rèn)為中的應(yīng)該像中的或中的一樣工作。盡管有點(diǎn)難理解,但它的原理并不神秘。在瀏覽器中,全局對(duì)象是對(duì)象。運(yùn)算符創(chuàng)建一個(gè)新對(duì)象并且設(shè)置函數(shù)中的指向調(diào)用函數(shù)的新對(duì)象。 原文:Understanding the this keyword in JavaScript 許多人被JavaScript中的this關(guān)鍵字給困擾住了,我想混亂的...
閱讀 2319·2021-10-09 09:41
閱讀 3498·2021-09-13 10:34
閱讀 1991·2019-08-30 12:59
閱讀 617·2019-08-29 17:27
閱讀 1125·2019-08-29 16:07
閱讀 3025·2019-08-29 13:15
閱讀 1378·2019-08-29 13:14
閱讀 1634·2019-08-26 12:18