Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 05.10.2014, 16:30
Новичок на форуме
Отправить личное сообщение для mistermar92 Посмотреть профиль Найти все сообщения от mistermar92
 
Регистрация: 05.10.2014
Сообщений: 4

А как же работает наш любимый JS.
Всем доброго времени суток. Подскажите пожалуйста, ( а лучше поделитесь ссылкой) как JS обрабатывает код. Меня интересуют потоки обработки файла.

Последний раз редактировалось mistermar92, 05.10.2014 в 16:34.
Ответить с цитированием
  #2 (permalink)  
Старый 05.10.2014, 19:01
Новичок на форуме
Отправить личное сообщение для mistermar92 Посмотреть профиль Найти все сообщения от mistermar92
 
Регистрация: 05.10.2014
Сообщений: 4

Либо может знаете как этот процесс называется?) и с ноовыми силами долбить гугл)
Ответить с цитированием
  #3 (permalink)  
Старый 05.10.2014, 19:07
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

Сообщение от mistermar92
как JS обрабатывает код
какой такой код обрабатывает js ?
Ответить с цитированием
  #4 (permalink)  
Старый 05.10.2014, 19:11
Новичок на форуме
Отправить личное сообщение для mistermar92 Посмотреть профиль Найти все сообщения от mistermar92
 
Регистрация: 05.10.2014
Сообщений: 4

Возможно не корректно выразился, но к примеру когда происходит баблинг переменных. Сам процесс, с самого начала когда мы запустили браузер и попросили выполнить его JS файл, с чего начинается весь процесс.
Ответить с цитированием
  #5 (permalink)  
Старый 05.10.2014, 19:26
Аватар для Safort
Профессор
Отправить личное сообщение для Safort Посмотреть профиль Найти все сообщения от Safort
 
Регистрация: 23.12.2013
Сообщений: 1,856

melky,
имеется в виду, как интерпретатор код обрабатывает.
Ответить с цитированием
  #6 (permalink)  
Старый 05.10.2014, 19:34
Аватар для MallSerg
Профессор
Отправить личное сообщение для MallSerg Посмотреть профиль Найти все сообщения от MallSerg
 
Регистрация: 07.03.2011
Сообщений: 1,138

сначала идет интерпретация JS в современных браузерах JS переводится в промежуточный байт код боле понятный для компьютера на основании полученного кода проводится его анализ и оптимазация ( спасибо браузерным войнам) затем код встраивается в глобальный скоп (это такой специальный объект в котором сохраняются именна=ссылки на переменные строятся хеш таблицы) после этого запускается компиляция в нативный код системы после этого код запускается на выполнение как нативный код текущей системы
Ответить с цитированием
  #7 (permalink)  
Старый 05.10.2014, 19:47
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Зависит от VM, т.к. реализаций JS много и они работают по разному, например Nashorn транслирует код в байт код JVM, а другие VM могут компилить код сразу в машинный, минуя байт код. Также может зависит от режима работы VM и т.д.

Примерная схема такова:

1) Парсинг исходного кода;
2) Генерация байт кода или непосредственная компиляция в машинный код;
3) В VM, которые используют JIT часто используемый байткод комплится в машинный.

Вообще VM может поступать как посчитает нужным, т.к. это никаким стандартом не контролируется, поэтому может статься, что принципы работы у того же SpiderMonkey и V8 сильно отличаются, в общем нужно разбираться конкретно.
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 05.10.2014 в 19:55.
Ответить с цитированием
  #8 (permalink)  
Старый 06.10.2014, 13:32
Новичок на форуме
Отправить личное сообщение для mistermar92 Посмотреть профиль Найти все сообщения от mistermar92
 
Регистрация: 05.10.2014
Сообщений: 4

Для тех кому интересно = ) ссылка на материал по моему вопросу. Думаю полезно знать каждому.
Ответить с цитированием
  #9 (permalink)  
Старый 06.10.2014, 13:53
Аватар для kobezzza
Быдлокодер;)
Отправить личное сообщение для kobezzza Посмотреть профиль Найти все сообщения от kobezzza
 
Регистрация: 19.11.2010
Сообщений: 4,338

Сообщение от mistermar92 Посмотреть сообщение
Для тех кому интересно = ) ссылка на материал по моему вопросу. Думаю полезно знать каждому.
Это уже классика, думаю все здешние постояльцы читали блог Сошникова
Только следует заметить, что в статье по ссылке описан стандарт ES3, а сейчас ES5.1 и готовится ES6, а там многое сделано иначе, но у Сошникова есть статьи и про актуальные стандарты.
__________________
kobezzza
code monkey

Последний раз редактировалось kobezzza, 06.10.2014 в 13:55.
Ответить с цитированием
  #10 (permalink)  
Старый 06.10.2014, 18:37
Аватар для Safort
Профессор
Отправить личное сообщение для Safort Посмотреть профиль Найти все сообщения от Safort
 
Регистрация: 23.12.2013
Сообщений: 1,856

kobezzza,
да, блог один из наигоднейших, что я читал.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как вы относитесь к наркоманам? Maxmaxmaximus7 Оффтопик 7 05.02.2014 13:29
Как работает подсветка синтаксиса? Hapson Events/DOM/Window 13 08.01.2014 20:07
Как работает Google Analytics: смотрю в "Инструментах разработчика" Chrome hrundel Общие вопросы Javascript 0 10.10.2013 19:31
Управление скроллом "а-ля тач" HonesT Элементы интерфейса 2 27.08.2013 14:25
Как обойти base href, чтобы ссылка на внешн. js была локальной? Andrej_2 Общие вопросы Javascript 2 18.11.2011 11:25