let { query, pathname } = url.parse(req.url, true);这样的语法应该怎么理解??
1条回答 默认 最新
幻灰龙 2021-02-20 11:58关注url.parse 返回的是一个对象,这个对象里含有querey, pathname属性,原来你应该这么写:
let ret = url.parse(req.url,true) let query = ret.query; let pathname = ret.pathname;ES6提供了对象解构赋值语法,支持直接从对象结构出含有的属性,语法是:
let {var1, var2} = {var1:…, var2:…}因此,上面的代码简化为
let { query, pathname } = url.parse(req.url, true);当然,如果url.parse返回了null/undefined,上述代码会报错,所以使用解构赋值前最好判断下是否为null
let ret = url.parse(req.url, true); if(ret==null){ return; } let {query, pathname} = ret;本回答被题主选为最佳回答 , 对您是否有帮助呢?评论 打赏 举报解决 2无用