2017-02-16 19 views
0

我们有一种情况,我们需要在业务逻辑内多次检查模型属性。在业务逻辑内多次检查模型属性

eg: if(this.model.attributes.AcmeData.attributes.isEmpty){ 
    } 

此检查将发生多次。如果多次检查这个物体或者我们应该把它保存在一个局部变量在多个地点使用,如:

var acmeDataFlag = this.model.attributes.AcmeData.attributes.isEmpty; 

,然后检查该变量多次。

对我来说,创建局部变量比多次检查该对象更加昂贵。

感谢,

+0

这是一个可以从[Code Review Stack Exchange](http://codereview.stackexchange.com/)获得更好回应的问题。但是,要警告的是,他们可能会对我在那里的问题提出同样的批评:“多次”是主观的(可能意味着5或可能意味着100),并且它不能提供足够的信息来合理地知道什么使这种改变会有。最重要的是,还有很多其他因素可以起作用。函数的大小,属性的改变频率,函数被调用的频率等。IMO,这不是一个可回答的问题。 – Claies

回答

2

,如果你创建一个变量与演讲的名称,IMO这将是更易于阅读和理解。有几个this.model.attributes.AcmeData.attributes.isEmpty功能很难阅读。

如果这不是真正的高性能代码,创建另一个变量的缺点可忽略不计,有利于提高可读性。

+1

你的问题是非常基于意见的,所以你可以得到相反的答案。但最佳做法通常建议使用显而易见的名称而不是长属性链来创建变量。 – Antonio