text: new Promise((resolve, reject) => {
    console.log("promise1");
    resolve();
  })
    .then(() => {
      console.log("then 11");
      new Promise((resolve, reject) => {
        console.log("promise2");
        resolve();
      })
        .then(() => {
          console.log("then 21");
        })
        .then(() => {
          console.log("then 22");
        });
    })
    .then(() => {
      console.log("then 12");
    });
  
  new Promise((resolve, reject) => {
    console.log("log: 外部promise");
    resolve();
  })
    .then(() => {
      console.log("log: 外部第一个then");
      new Promise((resolve, reject) => {
        console.log("log: 内部promise");
        resolve();
      })
        .then(() => {
          console.log("log: 内部第一个then");
        })
        .then(() => {
          console.log("log: 内部第二个then");
        });
    })
    .then(() => {
      console.log("log: 外部第二个then");
    });
  