3.0 source code
This commit is contained in:
80
OfficeWeb/vendor/underscore/test/speed.js
vendored
Normal file
80
OfficeWeb/vendor/underscore/test/speed.js
vendored
Normal file
@@ -0,0 +1,80 @@
|
||||
(function() {
|
||||
|
||||
var numbers = [];
|
||||
for (var i=0; i<1000; i++) numbers.push(i);
|
||||
var objArray = _.map(numbers, function(n){ return {num : n}; });
|
||||
var bigObj = {};
|
||||
_.times(1000, function(n){ bigObj['key' + n] = n; });
|
||||
var randomized = _.sortBy(numbers, function(){ return Math.random(); });
|
||||
var deep = _.map(_.range(100), function() { return _.range(1000); });
|
||||
|
||||
JSLitmus.test('_.each()', function() {
|
||||
var timesTwo = [];
|
||||
_.each(numbers, function(num){ timesTwo.push(num * 2); });
|
||||
return timesTwo;
|
||||
});
|
||||
|
||||
JSLitmus.test('_(list).each()', function() {
|
||||
var timesTwo = [];
|
||||
_(numbers).each(function(num){ timesTwo.push(num * 2); });
|
||||
return timesTwo;
|
||||
});
|
||||
|
||||
JSLitmus.test('jQuery.each()', function() {
|
||||
var timesTwo = [];
|
||||
jQuery.each(numbers, function(){ timesTwo.push(this * 2); });
|
||||
return timesTwo;
|
||||
});
|
||||
|
||||
JSLitmus.test('_.map()', function() {
|
||||
return _.map(objArray, function(obj){ return obj.num; });
|
||||
});
|
||||
|
||||
JSLitmus.test('jQuery.map()', function() {
|
||||
return jQuery.map(objArray, function(obj){ return obj.num; });
|
||||
});
|
||||
|
||||
JSLitmus.test('_.pluck()', function() {
|
||||
return _.pluck(objArray, 'num');
|
||||
});
|
||||
|
||||
JSLitmus.test('_.uniq()', function() {
|
||||
return _.uniq(randomized);
|
||||
});
|
||||
|
||||
JSLitmus.test('_.uniq() (sorted)', function() {
|
||||
return _.uniq(numbers, true);
|
||||
});
|
||||
|
||||
JSLitmus.test('_.sortBy()', function() {
|
||||
return _.sortBy(numbers, function(num){ return -num; });
|
||||
});
|
||||
|
||||
JSLitmus.test('_.isEqual()', function() {
|
||||
return _.isEqual(numbers, randomized);
|
||||
});
|
||||
|
||||
JSLitmus.test('_.keys()', function() {
|
||||
return _.keys(bigObj);
|
||||
});
|
||||
|
||||
JSLitmus.test('_.values()', function() {
|
||||
return _.values(bigObj);
|
||||
});
|
||||
|
||||
JSLitmus.test('_.intersection()', function() {
|
||||
return _.intersection(numbers, randomized);
|
||||
});
|
||||
|
||||
JSLitmus.test('_.range()', function() {
|
||||
return _.range(1000);
|
||||
});
|
||||
|
||||
JSLitmus.test('_.flatten()', function() {
|
||||
return _.flatten(deep);
|
||||
});
|
||||
|
||||
JSLitmus.test('_.flatten() (shallow)', function() {
|
||||
return _.flatten(deep, true);
|
||||
});
|
||||
})();
|
||||
Reference in New Issue
Block a user