Maison > interface Web > js tutoriel > JavaScript utilise des objets Promise pour implémenter des compétences de programmation_javascript asynchrones

JavaScript utilise des objets Promise pour implémenter des compétences de programmation_javascript asynchrones

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Libérer: 2016-05-16 15:12:35
original
1231 Les gens l'ont consulté

L'objet Promise est une interface unifiée fournie par le groupe de travail CommonJS pour la programmation asynchrone. C'est le support natif de Promise fourni dans ECMAScript6. L'utilisation de Promise peut éviter des couches d'imbrication de fonctions de rappel. et fournit également La spécification facilite le contrôle des opérations asynchrones. Fournit des méthodes telles que le rejet, la résolution, puis et la capture.

Utilisez PROMESSE

Promise est un objet natif après ES6 Il suffit d'instancier l'objet Promise pour l'utiliser directement.
Instancier la promesse :

var promise = new Promise(function (resolve, reject) {
  console.log('begin do something');
  if (Math.random() * 10.0 > 5) {
    console.log(" run success");
    resolve();
  } else {
    console.log(" run failed");
    reject();

  }
});

Copier après la connexion

Une fonction de méthode de rappel (resolve,reject) est définie ici. Si elle réussit, la résolution sera appelée. Si elle échoue, le rejet sera appelé.
Promise.prototype.then est le rappel après l'exécution de Promise. Vous pouvez utiliser la méthode then pour spécifier respectivement les rappels de résolution et de rejet.

promise.then(function () {
  console.log(' resolve from promise');
}, function () {
  console.log(' reject from promise');
});
Copier après la connexion

Résultat de l'exécution un :

begin do something
 run success
 resolve from promise
Copier après la connexion

Résultat de l'exécution deux :

begin do something
 run failed
 reject from promise
Copier après la connexion

Utilisez PROMISE pour les requêtes réseau

getRequest = function (url) {
  var promise = new Promise(function (resolve, reject) {
    var request = require('request');
    request(url, function (error, respones, body) {
      if (error) {
        reject(error);
        return;
      }
      if (respones.statusCode == 200) {
        resolve(body)

      } else {
        reject(respones.status);

      }
    });
  });
  return promise;

};

getRequest("https://github.com/").then(function (result) {
  console.log(result);
}, function (error) {
  console.error('error', error);
});

Copier après la connexion

Utilisez Promise pour effectuer des requêtes réseau, et vous pouvez également utiliser Promise pour implémenter des requêtes Ajax lors de la navigation.

Adresse du code : https://github.com/jjz/node

Étiquettes associées:
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers numéros
c++ appelle javascript
Depuis 1970-01-01 08:00:00
0
0
0
Qu’est-ce que le garbage collection JavaScript ?
Depuis 1970-01-01 08:00:00
0
0
0
Que sont les fonctions de hook JavaScript ?
Depuis 1970-01-01 08:00:00
0
0
0
Comment obtenir la date actuelle en JavaScript ?
Depuis 1970-01-01 08:00:00
0
0
0
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal