0
This question它在Javascript中,但我會認爲在Typescript我可以做一些類似的地圖/過濾器操作來做同樣的事情。我有一個對象數組叫Room
。每個Room
都有一個名爲Width
的屬性(它實際上是一個字符串,例如'4m','5m','6.5m')。Angular 2/Typescript - 如何檢查對象數組以查看屬性是否具有相同的值?
我需要檢查整個數組,看所有的寬度是否相同。基於這個問題,我有這個
,但我不知道是否有打字稿更好的東西:
let areWidthsTheSame = true;
this.qp.rooms.forEach(function(room, index, rooms) {
if (rooms[index] != rooms[index+1]) areWidthsTheSame = false;
});
任何想法?
僅供參考鏈接的問題有一個鏈接到these性能測試,這是在這個問題的背景下有趣的評論:
不錯 - 我認爲你可以把它一條線,對吧? const isSameWidth = rooms.map(r => r.width).every(val => val === rooms [0] .width); – rmcsharry
不,因爲我們訪問第一個索引,所以如果數組是空的,你會得到一個異常,如果你100%確定數組中有空間,那麼你可以安全地做到這一點@rmcsharry – galvan
@gaivan啊好點, 謝謝 :) – rmcsharry