substring

JavaScript performance comparison

Revision 9 of this test case created by Domingo

Preparation code

<script>
  var str = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec blandit massa mi, non bibendum eros blandit vitae. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Etiam porta, neque non pretium venenatis, dolor enim dapibus arcu, eget vulputate massa odio eu turpis. Sed gravida rutrum velit, nec tristique ipsum pretium non. Nullam facilisis ultrices felis, sed consectetur libero egestas in. Sed euismod imperdiet urna nec iaculis. Aliquam iaculis accumsan dui sit amet volutpat. Ut laoreet, erat vitae mollis venenatis, quam massa porta ligula, ut suscipit nisl leo ac ipsum. Ut vestibulum id magna id facilisis. Proin sed luctus est. Nam nisl nisl, imperdiet et molestie vel, porta at odio. Morbi tincidunt vulputate ullamcorper. Fusce dui metus, iaculis vel porta eget, gravida vitae neque. Donec suscipit, est a faucibus varius, nulla lorem sagittis ante, at porta purus neque a felis. Mauris a viverra sem, in tincidunt arcu. Nam nec hendrerit nibh. Integer laoreet mi justo, a lobortis est sagittis quis. Pellentesque et massa arcu. Vivamus quis hendrerit lacus, id tempor sem. Mauris auctor nibh ac odio ullamcorper, vitae convallis odio gravida. Curabitur consequat nibh velit, condimentum aliquet tellus sollicitudin at. Donec gravida in sapien nec consectetur. Morbi lacinia non erat eu lacinia. Suspendisse at placerat turpis. Vestibulum feugiat massa dolor, vitae vestibulum orci viverra nec. Fusce convallis volutpat pellentesque. Maecenas enim dolor, tincidunt at scelerisque at, rutrum ut erat. Phasellus sodales id lectus vel tristique. Vestibulum eu tristique nisi. Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse nibh dolor, porttitor at tincidunt in, eleifend in nisi. Etiam sed ultrices ipsum. Integer sollicitudin eleifend diam. Duis porta et nibh in malesuada. Suspendisse nec vestibulum odio. In at erat viverra, pharetra felis eu, tincidunt tellus. Aliquam erat volutpat. Vivamus vel libero nec metus aliquam sodales. Curabitur lectus leo, rutrum eget ultrices vitae, ornare id mauris. Integer vitae nulla vel metus tincidunt molestie rhoncus tristique nisi. Ut interdum nec tortor ut pellentesque. Ut aliquet at mi eget sollicitudin. Donec est arcu, gravida at dolor aliquam, sollicitudin dictum sem. Sed quis felis non nulla ultrices vulputate. Vivamus in adipiscing nunc. Morbi eget purus enim. Suspendisse feugiat, erat ut accumsan volutpat, neque massa vulputate est, non rhoncus massa sapien in quam. Sed euismod pretium felis non cursus. Morbi placerat fringilla bibendum. Ut ut laoreet est. Suspendisse ac purus facilisis, interdum diam ac, vulputate magna. Aenean nunc magna, mattis in accumsan eget, suscipit in leo. Nulla ut arcu id nulla ultricies pulvinar.";
  var needle = "volutpat";
  var needleRegex = /volutpat/;

function strHasWord(str, word){
	var found = str.indexOf(word);
	if(found >= 0) {
		if(found == 0){
			if( (str.length == word.length) ||
				(str[word.length] == " ") ) return true;
		} else {
			if( str[found-1] == " " ) {
				if( (str.length == found+word.length) ||
					(str[found+word.length] == " ")) return true;
			}
		}
	}
}
</script>
    

Test runner

Warning! For accurate results, please disable Firebug before running the tests. (Why?)

Java applet disabled.

Testing in CCBot 2.0.0 / Other 0.0.0
Test Ops/sec
regex
needleRegex.test(str)
pending…
substring
str.indexOf(needle)
pending…

Compare results of other browsers

Revisions

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

0 Comments