2017-02-16 28 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