对于解构赋值和分步赋值的取舍

如果需要解构的对象层级较深,而且此对象可能出现为{}的情况,那么哪种写法比较好呢?
1.

 try {     var { itemData: {
         couponName, agentName, logo, pid, status, statusText 
         },
         requestKey
     } = this.props || {};
 } catch (error) {
     couponName = null;
     agentName = null;
     logo = null;
     pid = null;
     status = null;
     statusText = null;
 }

2.

var { couponName, agentName, logo, pid, status, statusText } = this.props.itemData || {};        var { requestKey } = this.props || {};

有人说第二种写法不方便增加属性时继续解构,但是第一种写法,要catch的太多了,看着不太好,少的话还好,不知道该怎么写合适一些### 问题描述

问题出现的环境背景及自己尝试过哪些方法

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)

你期待的结果是什么?实际看到的错误信息又是什么?


函数式编程
浏览 462回答 1
1回答

江户川乱折腾

第一种,但是不需要try...catch.const { itemData: {           couponName, agentName, logo, pid, status, statusText           } = {},          requestKey      } = this.props || {};既然使用了ES6及其更高版本的语法,就不要再使用 var了。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Html5