最近讀到一本書《JavaScript設(shè)計(jì)模式與開發(fā)實(shí)踐》上,講到j(luò)s的多態(tài),我在JavaScript高級(jí)程序編程里貌似都沒有見過關(guān)于這個(gè)的詳細(xì)講解,所以想問問大家有沒有什么推薦的文章或者博客,可以推薦給小弟的,讓小弟可以深入了解一下。先把那本上的例子拿出來跟大家分享:書里面的故事:本人家里養(yǎng)了一只雞,一只鴨。當(dāng)主人向他們發(fā)出‘叫’的命令時(shí)。鴨子會(huì)嘎嘎的叫,而雞會(huì)咯咯的叫。轉(zhuǎn)化成代碼形式如下非多態(tài)代碼示例varmakeSound=function(animal){if(animalinstanceofDuck){console.log('嘎嘎嘎');}elseif(animalinstanceofChicken){console.log('咯咯咯');}}varDuck=function(){}varChiken=function(){};makeSound(newChicken());makeSound(newDuck());多態(tài)的代碼示例varmakeSound=function(animal){animal.sound();}varDuck=function(){}Duck.prototype.sound=function(){console.log('嘎嘎嘎')}varChiken=function(){};Chiken.prototype.sound=function(){console.log('咯咯咯')}makeSound(newChicken());makeSound(newDuck());多態(tài)背后的思想是將”做什么“和”誰去做以及怎樣去做分開“。
js 多態(tài)如何理解,最好能有個(gè)例子
九州編程
2019-04-13 08:36:55