猿问

有关JS定义接口的方法,鸭式辩型法,有没有大神可以给我详细的解释一下

最近在看一个有关定义接口的东西,结果看到了鸭式辩型法我就迷糊了,JS没有像java那样有interface方法,求大神给详细解释一下鸭式辩型法一般实现接口的步骤和 一些逻辑

湖上湖
浏览 773回答 2
2回答

慕村225694

这个没有什么实现接口吧,因为这个一般都是最无奈的选择了我判断A是否为一个数组,如果没有其他办法判断的话,我会判断A是否有length属性,并且有slice方法都有就认为是数组,但是严格意义上来说,这个东西不一定是个数组

吃鸡游戏

长了两条腿的,会嘎嘎叫的,就(当做)是鸭子。——这就是你所谓的“鸭式辩型法”。各种语言有各自擅长的领域,而且对于接口这种东西,正如你说的是没有的(而且现在很多语言也在弱化接口的概念)。接口是什么,是一种约定。所以,所谓的“鸭式辩型法”就是去检测这种约定是否遵守而已。遵守了,我们就当他实现了某个接口,具体的检测实现的过程是多样的。JavaScript是脚本语言,属于非编译类型语言,这种约定也是很脆弱的。所以,不用去纠结JavaScript的接口实现,学习另当别论。
随时随地看视频慕课网APP

相关分类

Java
我要回答