使用Javascript,你將如何去遍歷數組,然後 將結果存儲到單個對象或變量中?我知道我可以很容易地編寫單獨的函數來完成這個任務,但是如果我需要在單個函數中完成這個任務呢?如何迭代數組並將結果存儲在單個對象或變量中?
此代碼做我想要的,但顯然是重複的。你將如何幹起這段代碼並將結果返回到一個變量中?
var groupIds = ['G8372', 'G895', 'G12030'];
var groupOne = this.state.groups.find(g => g.get('extId') === groupIds[0]);
var groupTwo = this.state.groups.find(g => g.get('extId') === groupIds[1]);
var groupThree = this.state.groups.find(g => g.get('extId') === groupIds[2]);
var groupOneMembers = groupOne.get('members')
.filter(member => member.get('role') === 'member');
var groupTwoMembers = groupTwo.get('members')
.filter(member => member.get('role') === 'member');
var groupThreeMembers = groupThree.get('members')
.filter(member => member.get('role') === 'member');
var totalMembers = groupOneMembers.size + groupTwoMembers.size + groupThreeMembers.size;
return totalMembers;
https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Guide/Loops_and_iteration – juvian
如果您只想查找總成員,那麼爲什麼要將他們分爲不同的組?爲什麼不只在'groupAll'或'this.state.groups'上應用過濾器? –
這是完全奇怪的代碼。爲什麼你定義了三個函數'groupOne','groupTwo'和'groupThree',如果它們只有一個索引值不同?這同樣適用於'groupXXXMembers'。 – ftor