Я хотел бы увидеть исходный код JavaScript Promise. Я пробовал toSource()
, но он все равно просто отображал ƒ Promise() { [native code] }
. Есть ли способ увидеть собственный код?
Повторное открытие, потому что этот дубликат не очень специфичен для кода обещания и не содержит ссылок на то, как просмотреть реализации обещаний, написанные на Javascript. Просто дать кому-то ссылку верхнего уровня на репозиторий github не так полезно, как ответ, который фактически напрямую связывает OP с кодом, специфичным для обещания.
Фактически дубликат Прочитать собственный код JavaScript…
Обещания встроены в интерпретатор Javascript V8 и частично реализуются во внутреннем коде интерпретатора. Весь код node.js, включая движок V8 JS, доступен на Github по адресу https://github.com/nodejs/node, а значительная часть реализации обещания V8 - здесь, в этом репозитории.
Встроенный код читать непросто. Если вы хотите учиться на примере реализации чистого Javascript, то, вероятно, легче изучить любую из реализаций обещаний, полностью написанных на Javascript. Например, библиотека обещаний Bluebird находится здесь: https://github.com/petkaantonov/bluebird, а полифил обещаний находится здесь: https://github.com/taylorhakes/promise-polyfill.
есть много реализаций обещаний в javascript здесь, многие из них намного более читабельны, чем bluebird или polyfill обещания