Когда я увидел this question Я думал, что было бы полезно, если бы был написан компилятор jQuery . Теперь, по компилятор, я имею в виду что-то, что принимает код jQuery и выводит необработанный код javascript, который в конечном счете выполняется.Is JQuery * компилятор * возможно?
Это, как я видение блок выполнения JQuery кода:
- функция JQuery называется и параметры передаются ему
- функции вызывает сырое Javascript функции и передает параметры его, полученные в это
- вновь вызываемая функция выполняет намеченное действие
Я понимаю, что это очень упрощенная модель, и это может быть намного сложнее, но я думаю, что сложность сводится к повторению шагов 2 и 3 с использованием различных функций raw js, которые каждый раз подпитываются всеми или подмножеством параметров/предыдущих результатов.
Если мы присоединяемся к этой модели, то мы могли бы придумать методы, чтобы функции JQuery выполнять двойную обязанность:
- То, что они уже делают
- Logging, что они делали в форме
raw_function(passed_params)
Я делаю некоторые неправильные предположения, которые сделают это невозможным? Любые идеи о том, как профайлер Firebug пытается получить имена функций? Можно ли здесь использовать?
Редактировать
То, что я думал, делал черный ящик с входом/выходом, как:
normal jquery code
→ [BB] → code you'd write if you used no library
- Я назвал этот компилятор , потому что вы скомпилировали один раз и затем использовали полученный код.
- Я утверждал, что он может иметь как минимум образовательное использование и, возможно, другие виды использования.
- Люди сказали, что это займет небольшое количество кода и выдаст огромную массу; что не бросает вызов намеченной цели, насколько я вижу
- Люди сказали, что я добавлю лишний лишний шаг к рендерингу страницы, который, учитывая, что в конечном итоге будет использован только полученный результирующий код (и, вероятно, будет использоваться только для изучения), не является правильным.
- Люди говорили, что между функциями javascript и функциями jquery нет взаимно однозначного отношения, и подразумевается, что такой конвертер будет слишком сложным и, вероятно, не стоит усилий. С этим я сейчас согласен.
Спасибо всем!
Почему? jQuery - это JavaScript! В чем проблема с jQuery в последнее время. – halfdan
Ничего. Я люблю jQuery. Тем не менее такой * компилятор * был бы полезен даже в чистых образовательных целях. –
И, возможно, это может помочь людям оценить, что он делает для них под капотом. –