我有這個例子多維數組:的Javascript自定義數組原型
MyArray[('A', 40, true), ('B', 20, false), ('C', 55, true), ('D', 17, true)]
,我想實現一個自定義分鐘()和max()的原型來獲得最大和最小的僅是放入系統「真'......任何詭計?我被困在它,因爲我正在考慮.map()來提取某個屬性,但如何檢查是否啓用提取真/假屬性。
準確地說,我所做的:
var MyArray = [];
MyArray.push({
name: 'A',
valueA: 40,
valueB: 36,
enabled: true
});
MyArray.push({
name: 'B',
valueA: 20,
valueB: 18,
enabled: false
});
MyArray.push({
name: 'C',
valueA: 55,
valueB: 75,
enabled: true
});
.
.
.
,這就是爲什麼我要尋找那些與國家真正的最大值和最小值,排除是假的...
我試圖實現:
Array.minElement = function(array, prop) {
return Math.min.apply(Math,
array.filter(function(arr) { return arr['enabled']; })
.map(function(arr) { return arr[prop]; })
);
}
Array.maxElement = function(array, prop) {
return Math.max.apply(Math,
array.filter(function(arr) { return arr['enabled']; })
.map(function(arr) { return arr[prop]; })
);
}
所以我應該像Array.minElement(MyArray,'valueA')調用來獲取minimu米,但看起來它不工作....它應該返回分鐘...
我做錯了什麼嗎?......
感謝所有 乾杯 路易吉
展我們試過的東西 – Jose
你可能是指[['A',40,true],['B',20,false] ...'。在目前的形式中,它是由四個布爾值組成的陣列。 – georg
你能告訴我們你試過的東西和你的預期產量嗎? – Andy