Показать сообщение отдельно
  #6 (permalink)  
Старый 01.04.2016, 19:03
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

Для такого небольшого объекта в принципе одинаково.
var start = performance.now();
        for (var i = 0; i < 100000; i++)
        {
        function listToArray(obj) {
            var rez = [];
            JSON.stringify(obj).replace(/\"value\":\d+/g, function (str) { rez.push(str.split(':')[1]) });
            return rez;
        }
        var a = { value: 5, rest: { value: 10, rest: { value: 15, rest: { value: 30, rest: null } } } };
        }
        alert(performance.now()-start)


var start = performance.now();
        for (var i = 0; i < 100000; i++)
            {
        function listToArray(obj) {
            return obj.rest ? [obj.value].concat(listToArray(obj.rest)) : [obj.value];
        }
        a = { value: 5, rest: { value: 10, rest: { value: 15, rest: { value: 30, rest: null } } } };
        }
        alert(performance.now()-start)

Последний раз редактировалось destus, 01.04.2016 в 19:06.
Ответить с цитированием