Promises innerhalb einer Kette in JavaScript

Funktionen in einer Kette können auch Promises zurückgeben. In diesem Fall wird das Ergebnis dieses Promises an den nächsten then übergeben:

javascriptpromise.then(
  function(result) {
    return result + '1';
  }
).then(
  function(result) {
    return new Promise(function(resolve) {
      resolve(result + '2'); // dieses Ergebnis geht an den nächsten then
    });
  }
).then(
  function(result) {
    return result + '3';
  }
).then(
  function(result) {
    console.log(result); // gibt 'string123' aus
  }
);