一個(gè)不明白的問(wèn)題.剛開(kāi)始我學(xué)的是用函數(shù)式的寫(xiě)法,而且在JS函數(shù)嵌套函數(shù)是很容易的,這么就搞定了.后來(lái)我接觸到JS的this,理解每個(gè)函數(shù)的this指向自身所屬對(duì)象,接著就開(kāi)始接觸OOP的內(nèi)容了.但這里有個(gè)問(wèn)題,如果我再對(duì)函數(shù)進(jìn)行嵌套,this就可能出錯(cuò)了.比如一個(gè)對(duì)象的方法里,里邊再定義函數(shù)用來(lái)作為參數(shù)傳遞..或者僅僅是forEach增加一層作用域:obj=people:['a','b',c]data:a:'aaa'b:'aaa'c:'aaa'say:->this.people.forEach(name)->console.logthis.data[name]obj.say()在函數(shù)式編程里,沒(méi)有看到this這樣其葩的功能,而在有C/Java一類語(yǔ)言,不常用嵌套函數(shù)的.就像兩個(gè)東西不能很好地兼容似的...但兩個(gè)都被直接拿過(guò)來(lái)用在了腳本語(yǔ)言里邊有時(shí)候會(huì)用一個(gè)_this來(lái)讓this穿透函數(shù)定義,但我想不是個(gè)好辦法.不知道有沒(méi)有好的方案來(lái)解決?
面向?qū)ο笾星短椎暮瘮?shù), 關(guān)鍵字 this 怎樣處理?
慕虎7371278
2019-04-06 16:57:36