Показать сообщение отдельно
  #17 (permalink)  
Старый 12.12.2011, 23:49
Аватар для Livanderiaamarum
Профессор
Отправить личное сообщение для Livanderiaamarum Посмотреть профиль Найти все сообщения от Livanderiaamarum
 
Регистрация: 10.12.2011
Сообщений: 290

Сообщение от 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, странно это как то О_О может для справедливость их нужно в разное время запускать? удивительные резльтаты))
Ответить с цитированием