麻烦帮看async和await混写的写法对不对?
发布于 5 年前 作者 iori2882 2271 次浏览 来自 问答

之前发过一个帖子,new Promise 和 async是否可以混用,论坛2位朋友给出了很详细的解释,再次感谢2位朋友,楼主本身是萌新选手,想确认一下如下写法应该是没问题的吧?怕自己理解错了…

	//下面函数test返回promise对象,使用的时候 await myTest.test(key, value, ttl)
	test: async function(key, value, ttl){
            try {
                let ttlRe = await redisClient.redisGetTTL(key)
                // here,你的代码备注!
                if (ttlRe.message != -1 && ttlRe.message != -2 && ttlRe) {
                    return ({a: ttlRe});
                }
                console.log('过期重新生成:' + ttl)
                let zz = await redisClient.redisKeySet(key, value, ttl)
                return ({a: '过期重新生成'})
            } catch (err) {
                console.log('出错了:' + err)
                throw err
            }
    } \n``` 标记代码块
2 回复

async … await 没啥问题,不过第5行可能需要改成这样: if ( ttlRe && ttlRe.message !== -1 && ttlRe.message !== -2) { return ({a: ttlRe}); }

@huangchao308 谢谢 知道了

回到顶部