jsPerf.app is an online JavaScript performance benchmark test runner & jsperf.com mirror. It is a complete rewrite in homage to the once excellent jsperf.com now with hopefully a more modern & maintainable codebase.
jsperf.com URLs are mirrored at the same path, e.g:
https://jsperf.com/negative-modulo/2
Can be accessed at:
https://jsperf.app/negative-modulo/2
// 1k words generated similarly
const WORDS = [
"apple", "banana", "cherry", "date", "elderberry", "fig", "grape", "honeydew",
"kiwi", "lemon", "mango", "nectarine", "orange", "papaya", "quince", "raspberry",
"strawberry", "tangerine", "ugli", "vanilla", "watermelon", "xigua", "yellowfruit", "zucchini",
"apricot", "blueberry", "cantaloupe", "dragonfruit", "eggplant", "feijoa", "gooseberry",
"huckleberry", "imbe", "jackfruit", "kumquat", "lime", "mulberry", "nectar", "olive",
"peach", "pear", "plum", "pomegranate", "quandong", "rhubarb", "soursop", "tamarind",
"ugni", "voavanga", "watercress", "ximenia", "yam", "ziziphus", "avocado", "blackberry",
"cranberry", "durian", "elderflower", "figtree", "grapefruit", "hawthorn", "indianfig",
"jambul", "kiwifruit", "loganberry", "medlar", "nutmeg", "okra", "pineapple", "quava",
"redcurrant", "salak", "tangelo", "ugu", "vanillabean", "wolfberry", "yuzu", "zebrafish",
"almond", "butternut", "cucumber", "dewberry", "endive", "fennel", "ginkgo", "horseradish",
"ivy", "jicama", "kale", "lettuce", "mushroom", "nopale", "onion", "potato", "quinoa",
"radish", "spinach", "turnip", "ugliapple", "violet", "wheat", "yarrow", "zest",
"achira", "baklava", "coconut", "dumpling", "enchilada", "fondue", "guava", "haricot",
"island", "jasmine", "kebab", "lychee", "marzipan", "nectar", "omelette", "paella",
"quesadilla", "radicchio", "saffron", "tarragon", "uglifruit", "vodka", "wasabi", "xoconostle",
"yogurt", "ziti", "arugula", "biscuit", "cabbage", "danish", "endive", "fudge", "gorgonzola",
"halva", "icecream", "jalapeno", "kaleidoscope", "lobster", "meringue", "nori", "okra",
"parfait", "queso", "risotto", "sorbet", "turmeric", "ugric", "venison", "wiener", "xylophone",
"yucca", "zabaglione", "angelica", "brioche", "chimichanga", "daikon", "espresso", "focaccia",
"ginger", "hoisin", "imarti", "jalebi", "knish", "lasagna", "macaron", "nougat", "okra",
"pita", "quahog", "rigatoni", "spinach", "tilapia", "udon", "vichyssoise", "wakame",
"xylitol", "yuba", "zucchini", "asiago", "blackbean", "chickpea", "dumpling", "empanada",
"feta", "gnocchi", "haloumi", "iceberg", "jaggery", "kumara", "limoncello", "macadamia",
"noodle", "orzo", "parsnip", "quinoa", "ravioli", "scallop", "taro", "udon", "vinaigrette",
"wonton", "ximenia", "yokan", "zatar", "anchovy", "bratwurst", "croissant", "dahl", "eel",
"falafel", "gouda", "honey", "idli", "jalapeno", "kimchi", "lamb", "masala", "naan", "okra",
"palm", "quark", "rosemary", "shallot", "thyme", "upland", "vinaigrette", "wheatgrass",
"ximenia", "yolk", "zaatar", "amaranth", "baguette", "cassava", "duck", "eggplant", "flounder",
"grits", "hummus", "iceberg", "jackfruit", "kohlrabi", "lentil", "mandarin", "noodle",
"onion", "pork", "quahog", "rutabaga", "schnitzel", "turmeric", "uni", "vinegar", "wakame",
"xigua", "yam", "zucchini", "alfalfa", "beetroot", "celeriac", "donut", "endive", "flaxseed",
"ghee", "haddock", "ilama", "jerky", "kefir", "lobster", "mungbean", "nopal", "oregano",
"pancetta", "quince", "ramen", "samosa", "tofu", "udon", "vermouth", "walnut", "ximenia",
"yogurt", "zabaglione", "almond", "bokchoy", "calamari", "dandelion", "edamame", "foiegras",
"ginger", "horseradish", "irishmoss", "jicama", "kohlrabi", "lychee", "mozzarella", "nectarine",
"onion", "pomegranate", "quiche", "radish", "shiitake", "tomato", "upland", "venison", "watercress",
"xylitol", "yarrow", "ziti", "anchovy", "broccoli", "capers", "dumpling", "endive", "fennel",
"garlic", "herbs", "indianfig", "jalapeno", "kale", "lettuce", "mustard", "nachos", "olive",
"pasta", "quail", "rice", "spinach", "turnip", "udon", "vanillabean", "watermelon", "xylophone",
"yuca", "zebra", "avocado", "bamboo", "carrot", "dates", "endive", "fennel", "grape", "horseradish",
"island", "jalapeno", "kale", "lemon", "mango", "nectar", "olive", "papaya", "quinoa", "rhubarb",
"spinach", "tomato", "ugni", "vodka", "watermelon", "ximenia", "yam", "zebra"
];
const SEARCHES = [
"b*nana", // Should match "banana"
"gr*e", // Should match "grape"
"*berry", // Should match "blueberry", "raspberry", "strawberry", etc.
"ap*e", // Should match "apple"
"*fruit", // Should match "dragonfruit", "jackfruit", "grapefruit"
"c*rry", // Should match "cherry"
"w*termelon", // Should match "watermelon"
"ki*wi", // Should match "kiwi"
"e*berry", // Should match "elderberry" or "blueberry"
"ch*ch", // Should match "chickpea" or "cabbage"
];
Ready to run.
Test | Ops/sec | |
---|---|---|
Simple with Regex |
| ready |
With Indexes and Loops |
| ready |
You can edit these tests or add more tests to this page by appending /edit to the URL.