case insensitive indexOf (v11)

Revision 11 of this benchmark created by Guido Smeets on


Setup

var string = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. In odio augue, laoreet nec ultricies sit amet, pulvinar vel mi. Praesent faucibus turpis tortor, accumsan volutpat dolor posuere a. Duis viverra tellus ipsum, eu porta enim molestie sed. Cras non lectus eu ante tristique malesuada. Fusce luctus, tortor ac molestie efficitur, lacus ante sodales est, sed laoreet sem lorem a urna. Phasellus hendrerit ullamcorper scelerisque. Vestibulum sodales ut lectus vehicula ultricies. Fusce placerat sem sit amet orci auctor, ut egestas quam interdum. Sed in orci sed ex blandit finibus. Praesent ac tempor diam, a tempus turpis. Nunc at hendrerit mi. Vestibulum congue commodo dolor, ac elementum lacus. Nulla ac mauris at arcu tincidunt imperdiet. Cras dapibus, risus in feugiat interdum, magna dolor aliquam sapien, id auctor magna orci sed nisi. In quis iaculis felis, vel luctus erat. Nullam eleifend ac metus ullamcorper commodo. Praesent rhoncus pulvinar lorem, et tempus felis blandit ut. Integer tempus condimentum risus sit amet dictum. Maecenas vel velit nec ligula porttitor venenatis eget ac libero. Nullam suscipit sapien eu nisl vestibulum, at laoreet est luctus. Vestibulum accumsan ullamcorper facilisis. Pellentesque sit amet dapibus felis. Morbi condimentum consectetur dolor non feugiat. Fusce egestas placerat ante ut iaculis. Sed commodo leo in magna iaculis iaculis. Suspendisse potenti. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Donec mattis semper ultrices. Fusce erat dui, iaculis a augue fermentum, aliquet semper massa. Phasellus condimentum sed nulla non feugiat. Integer ut porta purus. Donec viverra purus sit amet pulvinar tempor. Pellentesque elementum orci metus, eu fermentum elit eleifend ut. Praesent commodo libero dictum mollis euismod. Proin dignissim ornare turpis. Mauris laoreet aliquet odio, in accumsan urna. Maecenas bibendum eget lacus non faucibus. Nulla feugiat lectus sit amet eros fringilla sollicitudin. Donec eget sollicitudin justo. Phasellus quis magna tristique, vehicula nunc ac, consequat nunc. Phasellus porta purus a ligula aliquet, vitae pretium neque eleifend. Nam placerat vel lectus eget aliquet. Fusce ipsum tortor, euismod porta elementum vitae, fermentum sit amet nisi. Morbi semper ipsum augue, nec auctor turpis ultricies et. Sed nec bibendum dui. Etiam imperdiet leo vitae eros tempor, pulvinar ultricies diam cursus. Sed malesuada vestibulum mi nec ornare. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Morbi viverra neque neque. Nam vel nibh luctus, condimentum nisi eget, aliquet massa. Aliquam tristique imperdiet dui. Morbi vitae convallis augue, ultricies ultrices nulla. Cras eu ipsum et metus laoreet suscipit quis et odio. Pellentesque ornare est nec felis ornare lobortis. Suspendisse sed porttitor augue, ut scelerisque nisl. Sed magna libero, molestie non molestie non, tempor non ex.';
  
  var testStrings = ['etiam', 'pellen', 'aug', 'tempor', 'cel'];

Test runner

Ready to run.

Testing in
TestOps/sec
toLowerCase indexOf
for (var i = 0; i < testStrings.length; i++) {
  string.toLowerCase().indexOf(testStrings[i]);
}
ready
cached regex
var regex = new RegExp(testStrings[i], 'i');
for (var i = 0; i < testStrings.length; i++) {
  string.search(regex);
}
ready
regex indexOf
for (var i = 0; i < testStrings.length; i++) {
  string.search(new RegExp(testStrings[i], 'i'));
}
ready

Revisions

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

  • Revision 1: published by Ilan Biala on
  • Revision 11: published by Guido Smeets on