Chcę wiedzieć, czy obietnice JS były częścią es5? Jeśli tak, dlaczego nie działa czasami w starszych przeglądarkach i musimy dodać polyfill dla tego samego. Ponadto, który polyfill należy dodać w tym przypadku, es5 lub es6? Mam małe zamieszanie dotyczące tego samego.ES5 vs ES6 Obietnica
Odpowiedz
ES5 nie otrzymał obietnic. Biblioteki takie jak jQuery lub Angular miały własne niestandardowe i niestandardowe implementacje obietnic.
Popularnymi implementacjami obietnic do użytku z ES5 są Bluebird (zgodny ze standardem ES6) i Q (który pierwotnie nie był zgodny ze standardem ES6 - choć wydaje się poruszać w tym kierunku) i RSVP.
Nie są to również rzeczywiste polyfills, ponieważ nie zejdą z drogi, jeśli obecne są obietnice, ponieważ dodają dodatkowe funkcje.
Istnieje kilka czystych polyfills dla obietnic ES6. Oto jeden, który jest podzbiorem RSVP: https://github.com/stefanpenner/es6-promise.
Istnieją powody do korzystania z więcej niż PolyFill jak można przeczytać tutaj: Are there still reasons to use promise libraries like Q or BlueBird now that we have ES6 promises?
wyjściowa zalecenia konkretnej biblioteki polyfill jest uważana za off-topic tutaj na przepełnienie stosu, więc nie będę tego komentować .
@ jfriend00 Znalazłem na googling ten codepen http://codepen.io/tijmenbruggeman/pen/LVOqBq Czy to wprowadzające w błąd? –
@ParamSingh - Co ten codepen ma wspólnego z czymkolwiek tutaj? – jfriend00
@KirillSlatin - już zmieniłem na "niestandardowy i niestandardowy", ale wolałbym wydawać energię na treści merytoryczne, a nie wyrabianie czegoś nie będzie nikomu mylić. – jfriend00
- 1. Jak wykonać eksport zgodny z ES5 i ES6?
- 2. Korzystanie z metod tablicowych ES5 z generatorami ES6
- 3. Asynchronous JavaScript - oddzwaniania vs Odroczony/Obietnica
- 4. Webpack z kanciastymi 1.x i ES5
- 5. Object.defineProperty w ES5?
- 6. Javascript (ES6), eksport const vs domyślnie eksportu
- 7. Obietnica oczekiwaniu
- 8. Czy istnieje jednoliniowy analog w ES6 dla ES5 `module.exports = require ('./ inner.js')`?
- 9. Wtyczka Maven, która transponuje ES6 na ES5, która używa Traceur lub Babel
- 10. Babel [karma-babel-preprocesor] Nie konwertowanie ES6-> ES5 dla testów karmy
- 11. Angular2 web workers z ES5
- 12. Generator ES6 Javascript async
- 13. Module.exports and es6 Import
- 14. Obietnica wewnątrz obietnicy
- 15. maszynopis Obietnica TS2304 TS2529
- 16. Obietnica AngularJS w app.run()
- 17. Typ obietnica typ rodzajowy
- 18. Obietnica usług granicznych
- 19. Zatrzymywanie angularjs łańcuch obietnica
- 20. Obietnica JavaScript wtedy() zamawianie
- 21. Parametr funkcji destrukcji ES6 - nazewnictwo obiektu głównego
- 22. Rozszerzanie klas EcmaScript 5 w kodzie ES6
- 23. Jak podkładki ES6 Mapa pracować
- 24. obietnica javascript Firebase w NodeJS
- 25. "Obietnica" jest niezdefiniowana w IE
- 26. $ q obietnica z podkreśleniem _each
- 27. Jak używać mangusty Obietnica - mongo
- 28. Oprawa funkcji obsługi obietnica obiektu
- 29. Użycie SystemJS/jspm do załadowania modułów async, es5 w produkcji
- 30. ReactJS.net - Jak używać modułów ES6
ES5 nie otrzymał obietnic. Biblioteki, takie jak jQuery lub Angular, mają własne zastrzeżone obietnice. – jfriend00
ES5 nie ma obietnic jako części języka. W przypadku ES5 obietnice to tylko wzór. W ES5 jest rzeczywiście wiele bibliotek, które wdrażają wiele różnych rodzajów obietnic. Możesz nawet zaimplementować je samodzielnie, ponieważ jest to tylko wzór. – slebetman
@slebetman Czy możesz podać mi jakiś łatwy przykład realizacji obietnicy? –