_.map vs .map

Benchmark created on


Preparation HTML

<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.13.6/underscore-min.js"></script>

Setup

const products = [];
for (let i = 0; i < 1000; i++) {
  products.push({
    id: i,
    name: 'Product ' + i,
    price: Math.random() * 100 + 10,
    quantity: Math.floor(Math.random() * 50) + 1,
    category: ['electronics', 'clothing', 'food', 'books'][i % 4],
    discount: Math.random() * 0.3
  });
}

const calculateFinalPrice = (product) => ({
    id: product.id,
    name: product.name,
    originalPrice: product.price,
    finalPrice: product.price * (1 - product.discount),
    totalValue: product.price * (1 - product.discount) * product.quantity,
    category: product.category
});

Test runner

Ready to run.

Testing in
TestOps/sec
_.map
_.map(products, calculateFinalPrice);
ready
.map
products.map(calculateFinalPrice);
ready

Revisions

You can edit these tests or add more tests to this page by appending /edit to the URL.