Как некоторые функции Javascript реализованы по-разному между nodejs и браузером?

Согласно ссылке на википедию v8:

V8 предназначен для использования как в браузере, так и в качестве автономного высокопроизводительного движка, который можно интегрировать в независимые проекты. V8 используется в следующем программном обеспечении:

  • Google Chrome и все другие веб-браузеры на базе Chromium, включая Brave, Opera и Vivaldi...

  • Среда выполнения Node.js

Имея это в виду, nodejs также использует libuv для обрабатывать асинхронные события:

Node.js использует libuv для обработки асинхронных событий. Libuv — это уровень абстракции для функций сети и файловой системы как в Windows, так и в системах на основе POSIX, таких как Linux, macOS, OSS on NonStop и Unix.

Поскольку и браузеры, и nodejs имеют общие части, которые не являются частью веб-API или узлы владеют api.

Я предполагаю, что некоторые функции, которые можно было бы сделать с помощью libuv, реализованы иначе, чем в браузере.

Какие примеры реализации API/JS отличаются между ними?


person silicakes    schedule 16.05.2019    source источник
comment
что вы подразумеваете под другим?   -  person apple apple    schedule 16.05.2019
comment
Код, который расширяет возможности libuv по сравнению с реализацией браузера, которая не может этого сделать.   -  person silicakes    schedule 16.05.2019
comment
Не уверен, что правильно понял ваш вопрос, но API таймеров реализован по-другому. Потому что ref/unref не имеет смысла в контексте браузера. Попробуйте typeof setTimeout(() => {})   -  person Yury Tarabanko    schedule 16.05.2019
comment
Отличный пример! У вас есть более?   -  person silicakes    schedule 16.05.2019
comment
Есть рассказ Берта Белдера: youtube.com/watch?v=5soA6MCRODg объясняет как устроен цикл событий в NodeJS. Надеюсь, это направит вас в правильном направлении.   -  person Edwin    schedule 16.05.2019


Ответы (1)


Цитата из здесь

Libuv — это библиотека, которая обеспечивает цикл обработки событий для Node.js.

Так что в основном этот ответ должен дать вам представление, я полагаю.

person Ali Elkhateeb    schedule 16.05.2019