Сообщение от melky
|
//http://site.ru/load/38-1-0-138
function lastNumber(_url, _word){
_word?_word=_word:_word = '-'
var start
for(var i=_url.length-1; i >= 0; i--){
if(_url[i] == _word){
start = i
break
}
}
return parseInt(_url.slice(start+1),10);
}
function lastNum2(str){
return (str=str.split())[str.length-1];
};
function lastNumber3 (str){
return str.substring(str.lastIndexOf("-") + 1);
};
function lastNumber4(_url) {
var _word = "-";
var start;
for(var i=_url.length-1; i >= 0; i--){
if(_url.charAt(i) == _word){
start = i;
break;
}
}
return _word = _url.slice(start+1);
}
var started;
var res = [];
var count = 1000000;
var i = 0;
var str = "http://site.ru/load/38-1-0-138";
started = Date.now();
for(i=0;i<count;i+=1) lastNumber(str, "-");
res.push( Date.now() - started );
started = Date.now();
for(i=0;i<count;i+=1) lastNum2(str);
res.push( Date.now() - started );
started = Date.now();
for(i=0;i<count;i+=1) lastNumber3(str);
res.push( Date.now() - started );
started = Date.now();
for(i=0;i<count;i+=1) lastNumber4(str);
res.push( Date.now() - started );
alert(res)
моя ф-я чуть медленней lastNumber3 в FF и намного быстрее её в chromium
|
ого, а моя у меня выдает 50, а другого парня 160-200, странно это как то О_О может для справедливость их нужно в разное время запускать? удивительные резльтаты))