有一個情景,求解
student.prototype.hi覆蓋了繼承的person.prototype.hi,若我想通過student調用person.protype.hi時,應該怎么做。
相當于學生在學校自我介紹需要用student.prototype.hi,出來社會后需要person.prototype.hi,但不可以刪除任意一個。我想知道可以通過什么參數來獲得
student.prototype.hi覆蓋了繼承的person.prototype.hi,若我想通過student調用person.protype.hi時,應該怎么做。
相當于學生在學校自我介紹需要用student.prototype.hi,出來社會后需要person.prototype.hi,但不可以刪除任意一個。我想知道可以通過什么參數來獲得
2015-05-13
舉報
2015-06-05
好詳細+1
2015-05-19
我好像不太理解。不過拋磚引玉,如果有哪里不對,請@ 我一聲,感謝??!
首先,邏輯上,如果你需要覆蓋一個方法,為什么還要調用它?
對于「學生在學校自我介紹需要用student.prototype.hi,出來社會后需要person.prototype.hi」,這應該是【學生在不同的場合說不同的話】,也就是說這個場景的都是在談論【學生】的,跟【人】這個類沒有關系。也許學生默認情況下說的 hi 就是人說的 hi,但那也是學生這個類說的。
demo1:直接寫出默認值
demo2:使用Person 類的 .hi() 作為默認值
而對于 【被子類覆蓋的 .hi() 方法】,能否通過什么參數獲得?
就我認知是不可以的。
當對象調用函數時,JS 會在該對象的原型鏈上去尋找,找到 即 返回,而 不會 再向原型鏈的 上一級 去尋找。