如何从函数返回的对象中解构并重命名变量,解决取值undefined问题
对象解构自定义变量名实现方案
你可以直接使用JS对象解构内置的重命名语法,将返回对象的原有属性映射到你自定义的变量名上,语法规则为:const { 原有属性名: 自定义变量名 } = 待解构对象。
对应你的业务场景修改后的可运行代码如下:
function someRes() { const val1 = 1 const val2 = 2 return {val1, val2} } // 不重命名,直接使用返回对象的属性名作为变量名 const {val1, val2} = someRes() // 重命名为自定义变量val3、val4 const { val1: val3, val2: val4 } = someRes() console.log(val1, val2) // 输出 1 2 console.log(val3, val4) // 输出 1 2
如果需要同时给变量设置兜底默认值,避免返回对象缺属性时返回undefined,可以使用如下写法:
const { val1: val3 = 0, val2: val4 = 0 } = someRes()
内容的提问来源于stack exchange,提问作者yuval
相关产品推荐
相关产品推荐

