LINUX.ORG.RU

Javascript движки для с++

 ,


0

1

Приветствую,

Подскажите пожалуйста, вот есть такие JS движки, как V8, Duktape или ChakraCore, которые, как следует из их описания - позволяют из С/С++ кода запускать JS код.

Но я не могу понять, а как они работает или точнее, что они могут делать вообще ? То есть если я им, как то подсуну JS-код из скаченной Html-страницы - они же кго не выполнять ?

Ну то есть, если к примеру будет во такой JS-код:

cosnt xhr = new XMLHttpRequest();
xhr.open(‘Post’, requestURL);
xhr.onload = () =>
{
console.log(xhr.response);
}
xhr.send();

Движок JS запущенный из кода C/C++ - сможет сам создать объект XMLHttpRequest - открыть соединение, послать указанный Post запрос по указанному URL и принять ответ ??

Если вдруг кто понимает, объясните пожалуйста.

Ответ на: комментарий от AKonia

Я так понимаю в хромиуме V8, но судя по комментарию выше, одним V8 в хромиуме не обходится и реализация всяких ajaxов и fetchей - занимается уже другой модуль хрома.

Staxcelrom
() автор топика
Ответ на: комментарий от Staxcelrom

ну я имел примерно то, что все эти модули к V8 скорее всего +- терпимо прикручиваются, тогда как ко всем остальным придётся прикручивать самостоятельно.

AKonia ★★★
()
Ответ на: комментарий от Staxcelrom

полагаю язык разбирает и выполнят, а внешняя среда донастраивает виртуальную машину и пр.

AKonia ★★★
()
Последнее исправление: AKonia (всего исправлений: 1)
Ответ на: комментарий от Staxcelrom

Только не понятно тогда, а что именно делает V8 в хроме ? Какие задачи он выполняет.

Тут популярно написано, что именно делает V8, зачем он нужен и какие задачи выполняет (и какие НЕ выполняет)

https://v8.dev/docs

https://en.wikipedia.org/wiki/V8_(JavaScript_engine)

И рекомендую прочесть хотя бы этот вводный материал о том, как все устроено, чтобы не задаваться такими вопросами.

https://www.html5rocks.com/en/tutorials/internals/howbrowserswork/

javascript
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.