What's the difference between JavaScript and Java?
В чем разница между JavaScript и Java?
В чем разница между JavaScript и Java?
Переведено автоматически
Ответ 1
Java и Javascript похожи, как автомобиль и ковер.
Ответ 2
One - это, по сути, игрушка, предназначенная для написания небольших фрагментов кода, которой традиционно пользуются и злоупотребляют неопытные программисты.
Другой - это язык сценариев для веб-браузеров.
Ответ 3
Вот некоторые различия между этими двумя языками:
Java - это статически типизированный язык; JavaScript динамичен.
Java основана на классах; JavaScript основан на прототипах.
Конструкторы Java - это специальные функции, которые могут быть вызваны только при создании объекта; "конструкторы" JavaScript - это просто стандартные функции.
Java требует, чтобы все неблочные инструкции заканчивались точкой с запятой; JavaScript вставляет точки с запятой в концах определенных строк.
Java использует область видимости на основе блоков; JavaScript использует область видимости на основе функций.
Java имеет неявную this область видимости для нестатических методов и неявную область видимости класса; JavaScript имеет неявную глобальную область видимости.
Вот некоторые функции, которые, по моему мнению, являются особенно сильными сторонами JavaScript:
JavaScript поддерживает замыкания; Java может имитировать своего рода "замыкания" с использованием анонимных классов. (Настоящие замыкания могут поддерживаться в будущей версии Java.)
Все функции JavaScript являются переменными; функции Java являются переменными только в том случае, если они явно отмечены.
Прототипы JavaScript могут быть переопределены во время выполнения и имеют немедленный эффект для всех ссылающихся объектов. Классы Java не могут быть переопределены таким образом, чтобы это повлияло на какие-либо существующие экземпляры объектов.
JavaScript позволяет переопределять методы в объекте независимо от его прототипа (подумайте о собственных классах в Ruby, но на стероидах); методы в объекте Java привязаны к его классу и не могут быть переопределены во время выполнения.
JavaScript, несмотря на название, по сути, не имеет отношения к языку программирования Java, хотя оба имеют общий синтаксис C, а JavaScript копирует многие имена Java и соглашения об именовании. Первоначально язык назывался "LiveScript", но был переименован в рамках совместного маркетингового соглашения между Netscape и Sun в обмен на то, что Netscape объединила среду выполнения Sun Java runtime с их доминирующим на тот момент браузером. Ключевые принципы проектирования в JavaScript унаследованы от языков программирования Self и Scheme.