Предварительная компиляция JavaScript из VS2008 IDE

Могу ли я предварительно скомпилировать код JS при создании решения? Я хотел бы узнать об общих проблемах, прежде чем перейду к браузеру. В идеале я бы создал sln и, при необходимости, имел бы плагин или вызов из событий сборки, проверял код js на компиляторе Java. Заранее большое спасибо!

Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
2
0
749
5

Ответы 5

Javascript - это интерпретируемый язык, он не компилируется до времени выполнения. Кроме того, javascript имеет очень и очень мало общего с Java. Netscape выпустила JavaScript примерно в то же время, когда Sun выпустила Java, и между ними было своего рода маркетинговое соглашение. В противном случае они не связаны.

Javascript не компилируется, не имеет ничего общего с Java, кроме некоторого общего синтаксиса, и его лучше всего протестировать, загрузив ваше приложение в браузер.

Есть несколько доступных фреймворков / инструментов для тестирования JS, но я не могу рекомендовать ни один из них сам.

Несмотря на то, что говорили многие другие плакаты, во многих случаях (включая движок Mozilla Spidermonkey, найденный в браузере Firefox) Javascript является на самом деле скомпилирован в байт-коды, отдаленно похожий (но не совместимый) с теми, которые используются в Java. Вы просто не видите вывод компилятора, потому что он никогда не доступен вам, только интерпретатору байт-кода Javascript. Также невозможно сохранить скомпилированные байт-коды для повторного использования (по крайней мере, в контексте веб-браузера; при альтернативном использовании движка Spidermonkey я думаю, что можно сохранить скомпилированные байт-коды в памяти для повторного использования, но не в форме, которая может можно сохранить на диск для дальнейшего использования), насколько мне известно.

Я использую оболочку Javascript JSDB, которая также использует движок Spidermonkey; когда вы загружаете файл, он будет жаловаться на синтаксические ошибки еще до того, как запустит хотя бы одну строку кода. Однако это не тот же тип компиляции, что и Java; Javascript - это язык со слабой типизацией, поэтому он не будет обнаруживать проблемы, как компилятор Java (например, жаловаться на все, что он знает, что вы сделали неправильно).

Сказав это, я бы добавил JSLint во второй раз, так как он, вероятно, поймает многие из ваших ошибок.

Кстати, проект Носорог позволяет вам компилировать Javascript в классы Java; Я никогда не пробовал, но звучит интересно.

Прошу прощения за неправильное употребление термина «компилировать». Я полностью понимаю разницу между компилируемыми и интерпретируемыми языками. Меня интересует регулярная проверка моего синтаксиса во время сборки, чтобы помечать опечатки, недопустимые вызовы методов и тому подобное. Я собираюсь изучить, что порекомендовал для этого Джейсон С. Я также полностью осознаю, что JavaScript - это не Java, но я читал раньше, что вы можете запускать свой JS-код через компилятор Java для проверки синтаксиса. Я надеялся найти что-то более интегрированное с VS.
Большое спасибо всем, кто понимает смысл моей просьбы.

Попробуйте JSLint.VS

Другие вопросы по теме