![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JavaScript
文章平均质量分 55
JS
蓝可乐加糖
这个作者很懒,什么都没留下…
展开
-
JS中的this简要分析
this与作用域this与词法作用域是两套不同的机制。var count = 1;function foo() {var count = 0;console.log(count); // 0, 通过作用域查找变量countconsole.log(this.count); // 1, 通过this查找变量count}foo();上述例子中,当我们打印变量count时,此时程序通过词法作用域去查找变量,而正好函数foo()中定义了该变量,因此输出0;当我们打印原创 2021-04-10 10:33:17 · 159 阅读 · 0 评论 -
Async的错误处理
Async/await作为generator+自动执行器+promise的语法糖,他能够用同步写法写异步代码,同时他捕获错误的方式也十分简单:promise.catch和try-catch。promise.catchasync function foo() { let res = await 1; throw new Error('my error');}foo().catch(e => { console.log('catch捕获', e);});由于asyn原创 2021-04-07 10:26:41 · 1473 阅读 · 0 评论 -
记一个await的错误抛出问题.
function t1() { return new Promise((resolve, reject) => { throw new Error('my error'); // resolve('11111'); });}try { t1();} catch (e) { console.log('无await的try-catch捕获'); //无法捕获}async function foo() { try {原创 2021-04-06 19:49:17 · 253 阅读 · 0 评论 -
Promise的错误处理简要分析
Promise中会出现错误异常的地方有两处:new Promise(executor)的executor函数;then(onResolved,onRejecte)的回调函数。我们将根据同步代码和异步代码两种情况,进行分析。executor同步代码 let p1 = new Promise((resolve, reject) => { console.log(1); throw new Error('sync error'); console.log(2);原创 2021-04-06 13:32:45 · 1564 阅读 · 0 评论