首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >itemIncludesTotal()

itemIncludesTotal()
EN

Code Review用户
提问于 2016-10-20 00:15:06
回答 1查看 51关注 0票数 1

我们有这样一个JavaScript函数声明:

代码语言:javascript
复制
function itemIncludesTotal(item){
    var includeItem = false;
    if (item.lineItem.hasOwnProperty("details")
      && item.lineItem.details.hasOwnProperty("total")
      && item.lineItem.details["total"]
      && !item.lineItem.restricted
    ){
      includeItem = true;
    }
    return includeItem;
  };

其中函数的参数(item)为:

代码语言:javascript
复制
var item = {lineItem: {details: {total: "$5.00"}, restricted: true}};

函数调用和返回值为:

代码语言:javascript
复制
itemIncludesTotal(item); => TRUE || FALSE

我们的小组正在讨论其结构:

  1. 应该让它一个人呆着吗?
  2. 它应该被重新分解吗?
  3. 您将如何重构此功能?
  4. 你为什么要重构你的方式?
  5. 如果你个人对这个功能有什么满意的地方呢?
  6. 如果你个人对这个功能有什么不满意的地方呢?
  7. 这个功能与当前的行业实践相匹配吗?
  8. 如果有的话,这一功能缺乏哪些行业实践?
EN

回答 1

Code Review用户

回答已采纳

发布于 2016-10-20 08:20:28

如果数据像问题中所示的那样简单明了,我就会琐碎地实现一些琐碎的事情。

代码语言:javascript
复制
function includesTotal(item) {
    return item.lineItem.details
        && item.lineItem.details.total
        && !item.lineItem.restricted ? true : false;
}

最后一个? true : false只是简单地表明返回值是布尔值。

但是,对于泛型函数,我会完整地检查路径:

代码语言:javascript
复制
function includesTotal(item) {
    return item
        && item.lineItem
        && item.lineItem.details
        && item.lineItem.details.total
        && !item.lineItem.restricted ? true : false;
}
票数 3
EN
页面原文内容由Code Review提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://codereview.stackexchange.com/questions/144708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档