Extending objects without touching prototypes
Just experimental ...
by rpflorence
HTML
<script src="https://gist.github.com/raw/780728/5af3b4937485c493703e8b64d25baa1b8391a813/natives.js"></script>
JavaScript
_.define('array', 'sum', function(){
var sum = 0;
for (var i = this.length - 1; i >= 0; i--){
sum += parseFloat(this[i]);
};
return _(sum);
});
_.define('number', 'round', function(precision){
precision = Math.pow(10, precision || 0).toFixed(precision < 0 ? -precision : 0);
return _(Math.round(this * precision) / precision);
});
var value = _([1, 1, 1.5]).sum().round().get();
document.write('<p>' + value + '</p>');