<ul class="menu">
<li data-num="1">Первый пункт</li>
<li data-num="3">Третий пункт</li>
<li data-num="5">Пятый пункт</li>
<li data-num="2">Второй пункт</li>
<li data-num="4">Четвертый пункт</li>
<li data-num="6">Шестой пункт</li>
</ul>
[...document.querySelector('.menu').children]
.sort((a, b) => a.dataset.num - b.dataset.num)
.forEach(n => n.parentNode.appendChild(n));
const menu = document.querySelector('.menu');
menu.append(...Array
.from(menu.children)
.reduce((acc, n) => (acc[n.dataset.num - 1] = n, acc), [])
);