- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想这可以适用于任何动态语言,但我使用的是 JavaScript。我们遇到的情况是,我们正在 JavaScript 中编写几个控件,这些控件需要公开 Send() 函数,然后由托管 JavaScript 的页面调用该函数。我们有一个定义了此 Send 函数的对象数组,因此我们迭代该集合并对每个对象调用 Send()。
在面向对象语言中,如果您想做类似的事情,您将拥有一个 IControl 接口(interface),该接口(interface)具有必须由每个控件实现的 Send() 函数,然后您将拥有一个 IControl 实现的集合会迭代并调用发送方法。
我的问题是,由于 JavaScript 是一种动态语言,是否需要定义控件应继承的接口(interface),或者仅调用控件上公开的 Send() 函数就足够了?
最佳答案
动态语言通常鼓励 Duck Typing ,其中对象的方法决定了应该如何使用它,而不是显式的契约(例如接口(interface))。
关于javascript - JavaScript 中的接口(interface)有必要吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1419626/
我正在使用 this solution在二进制矩阵中找到与图像边界对齐的矩形。假设现在我想找到一个不与图像边框对齐的矩形,并且我不知道它的方向;找到它的最快方法是什么? 为了示例,让我们寻找一个仅包含
else: 行在这个 Python 程序中是否正确/必要? from random import randrange for n in range(10): r = randrange(0,1
在 TDPL 7.1.5.1 中讨论了将 Widget w2 分配给 w1 并且作者指出“将 w2 逐个字段分配给 w1 会将 w2.array 分配给 w1.array——一个简单的数组边界分配,而
我是一名优秀的程序员,十分优秀!