Как строится Promise?

Я хотел бы увидеть исходный код JavaScript Promise. Я пробовал toSource(), но он все равно просто отображал ƒ Promise() { [native code] }. Есть ли способ увидеть собственный код?

github.com/taylorhakes/promise-polyfill
Piterden 24.10.2018 04:09

Повторное открытие, потому что этот дубликат не очень специфичен для кода обещания и не содержит ссылок на то, как просмотреть реализации обещаний, написанные на Javascript. Просто дать кому-то ссылку верхнего уровня на репозиторий github не так полезно, как ответ, который фактически напрямую связывает OP с кодом, специфичным для обещания.

jfriend00 24.10.2018 04:49

Фактически дубликат Прочитать собственный код JavaScript

deceze 24.10.2018 04:59
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
3
3
101
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Обещания встроены в интерпретатор 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 обещания

Bravo 24.10.2018 09:45

Другие вопросы по теме