/*************************************************** *
*作成者:joe zhou
*説明: 配列統計関数
***************************** * **********************/
$.extend({
max: function (arr) {
return cacl(arr, function (item, max) {
if (!(max > item)) {
return item;
}
else {
return max;
🎜> });
},
min: function (arr) {
return cacl(arr, function (item, min) {
if (!(min < item)) {
return item;
}
その他{
return min;
}
});
},
sum: function (arr) {
return cacl(arr, function (item, sum) {
if (typeof (sum) == '未定義') {
return item;
}
else {
return sum = item;
}
});
} 、
avg: function (arr) {
if (typeof (arr) == '未定義' || arr.length == 0) {
return 0;
}
return this .sum(arr) / arr.length;
}
});
$.fn.extend({
max: function () {
return $.max( this.get());
},
min: function () {
return $.min(this.get());
},
sum: function () {
return $.sum(this.get());
},
avg: function () {
return $.avg(this.get());
}
});
function cacl(arr, callback) {
var ret;
for (var i=0; i
ret = callback(arr[i], ret);
}
return ret;
}
Array.prototype.max = function () {
return cacl(this, function (item, max) {
if (!(max > item)) {
return item;
}
else {
return max;
}
});
};
Array.prototype.min = function () {
return cacl(this, function (item, min) {
if (!(min アイテムを返す;
}
else {
return min;
}
});
};
Array.prototype.sum = function () {
return cacl(this, function (item 、sum) {
if (typeof (sum) == 'unknown') {
return item;
}
else {
return sum = item;
}
});
};
Array.prototype.avg = function () {
if (this.length == 0) {
return 0;
}
return this. sum(this) / this.length;
};