MDN速刷 JS JS指南篇——流程控制与错误处理

语句块

用{}包裹的语句

条件判断

if…eles

switch…case

异常处理

throw

try…catch…finally

openMyFile();
try {
  writeMyFile(theData); //This may throw a error
} catch (e) {
  handleError(e); // If we got a error we handle it
} finally {
  closeMyFile(); // always close the resource
}

Promises

从 ECMAScript 6 开始,JavaScript 增加了对 Promise 对象的支持,它允许你对延时和异步操作流进行控制。

Promise 对象有以下几种状态:

  • pending:初始的状态,即正在执行,不处于 - - - fulfilled 或 rejected 状态。
  • fulfilled:成功的完成了操作。
  • rejected:失败,没有完成操作。
  • settled:Promise 处于 fulfilled 或 rejected 二者中的任意一个状态, 不会是 pending。
function imgLoad(url) {
  return new Promise(function (resolve, reject) {
    var request = new XMLHttpRequest();
    request.open('GET', url);
    request.responseType = 'blob';
    request.onload = function () {
      if (request.status === 200) {
        resolve(request.response);
      } else {
        reject(
          Error(
            "Image didn't load successfully; error code:" + request.statusText
          )
        );
      }
    };
    request.onerror = function () {
      reject(Error('There was a network error.'));
    };
    request.send();
  });
}

小结

基础内容,上午有个面试延迟了,我说下午三点,结果没理我,不晓得什么情况…

两点还有个面试,一会记录一下。

评论0

  • 还没有评论,来说点什么吧。