2016-06-07 2 views
0

В настоящее время я изучаю JavaScript с использованием сети разработчиков Mozilla в качестве ссылки.Разница между объектом и интерфейсом в JavaScript

Это смущает меня, что MDN относится к объектам как интерфейсам.

Например: Document.createTreeWalker()

В нижней части есть ссылка на TreeWalker объект, но он говорит:

интерфейс объекта он создает: TreeWalker

Как может TreeWalker - это интерфейс, если я могу его создать? И TreeWalker - всего лишь пример, почти каждый объект в MDN называется интерфейсом.

Я исхожу из фона Java, поэтому использование интерфейса в этом контексте мне непонятно. Является ли интерфейс в JavaScript чем-то иным, чем в Java?

+1

Java-тег не подходит для этого вопроса, поскольку он не является неотъемлемой частью Java. –

ответ

0

Существует не истинный интерфейс, встроенный в JavaScript. Похоже, что они относятся к объекту, который наследуется от интерфейса. В вашем примере Document.createTreeWalker() возвращает экземпляр объекта TreeWalker.

// myTreeWalker is your object. TreeWalker is the interface. 
var myTreeWalker = Document.createTreeWalker() 
3

«интерфейс» возникает в этом контексте, потому что это термин, используемый в стандартах, применимых к (JavaScript) объекта описан на MDN.

Веб-стандарты использовать интерфейса язык в определении или IDL, описанных в Web IDL, чтобы описать поведение браузера объектов независимо от языка, например, javascript, используемый для их манипулирования. Следовательно, TreeWalker задокументирован как «интерфейс» в Document Object Model (DOM) Level 2 Traversal and Range Specification

В известном смысле MDN просто использует словарь стандарта, который определяет интерфейс, отображаемый описанным им объектом браузера. В какой степени предмет документации будет описываться как «интерфейс» на другом языке, может варьироваться в зависимости от конкретного случая.


C.F. определение interface, используемое в веб-стандартах.

Смежные вопросы