La méthode Promise.resolve(valeur)
renvoie un objet Promise
qui est résolu avec la valeur donnée. Si cette valeur possède une méthode then
, la promesse renvoyée « suivra » cette méthode et prendra son état ; sinon, la promesse renvoyée sera tenue avec la valeur.
Syntaxe
Promise.resolve(valeur); Promise.resolve(promesse); Promise.resolve(suivant);
Paramètres
valeur
- L'argument qu'on souhaite résoudre avec cette promesse (
Promise
). Cet argument peut être un objetPromise
ou un objet avec une méthodethen
à résoudre à la suite.
Valeur de retour
Une promesse (Promise
qui est résolue avec la valeur indiquée en argument.
Description
La fonction statique Promise.resolve
renvoie un objet Promise
qui est résolu.
Exemples
Utilisation de la méthode statique Promise.resolve
Promise.resolve("Succès").then(function(valeur) { console.log(valeur); // "Succès" }, function(valeur) { // n'est pas appelée });
Résoudre un tableau
var p = Promise.resolve([1,2,3]); p.then(function(v) { console.log(v[0]); // 1 });
Résoudre une autre Promise
var original = Promise.resolve(true); var cast = Promise.resolve(original); cast.then(function(v) { console.log(v); // true });
Résoudre des objets avec then
et renvoyer des erreurs
// Résoudre un objet avec then var p1 = Promise.resolve({ then: function(onFulfill, onReject) { onFulfill("tenue !"); } }); console.log(p1 instanceof Promise) // true, l'objet est transformée en une Promise p1.then(function(v) { console.log(v); // "tenue !" }, function(e) { // n'est pas appelée }); // L'objet avec then renvoie une erreur avant le callback // La promesse n'est pas tenue var thenable = { then: function(resolve) { throw new TypeError("Renvoi d'erreur"); resolve("Résolution "); }}; var p2 = Promise.resolve(thenable); p2.then(function(v) { // n'est pas appelée }, function(e) { console.log(e); // TypeError : Renvoi d'erreur }); // L'objet avec then renvoie une erreur après le callback // La promesse est tenue var thenable = { then: function(resolve) { resolve("Résolue"); throw new TypeError("Erreur"); }}; var p3 = Promise.resolve(thenable); p3.then(function(v) { console.log(v); // "Résolue" }, function(e) { // n'est pas appelée });
Spécifications
Spécification | État | Commentaires |
---|---|---|
ECMAScript 2015 (6th Edition, ECMA-262) La définition de 'Promise.reject' dans cette spécification. |
Standard | Définition initiale au sein d'un standard ECMA. |
ECMAScript 2017 Draft (ECMA-262) La définition de 'Promise.resolve' dans cette spécification. |
Projet |
Compatibilité des navigateurs
Pour contribuer à ces données de compatibilité, vous pouvez envoyer une poule requête sur : https://github.com/mdn/browser-compat-data/blob/master/javascript/promise.json.
Fonctionnalité | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari | Servo |
---|---|---|---|---|---|---|---|
Support simple | 32.0 | (Oui) | 29.0 | Aucun support | 19 | 7.1 | Aucun support |
Fonctionnalité | Android | Chrome for Android | Edge Mobile | Firefox for Android | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|---|
Support simple | 4.4.4 | 32.0 | (Oui) | 29 | Aucun support | (Oui) | 8.0 |
Voir aussi
Étiquettes et contributeurs liés au document
Étiquettes :
Contributeurs à cette page :
SphinxKnight,
Goofy
Dernière mise à jour par :
SphinxKnight,