Как сделать так, чтобы вместо текста заголовков вырезался сам ?
<ul class="productdetails">
<li><a>Заголовок Acer</a></li>
<li><a>Заголовок Xiaomi</a></li>
<li><a>Заголовок Samsung</a></li>
</ul>
<ul class="productdetails">
<li><a>Acer</a></li>
<li><a>Xiaomi</a></li>
<li><a>Samsung</a></li>
</ul>
const ul = document.querySelectorAll('.productdetails');
[].forEach.call(ul, (item) => {
const data = [...item.children].reduce((acc, n) => {
let t = n.innerText.indexOf(' ') != -1 ? n.innerText.split(' ')[1] : n.innerText;
let k = t[0].toLowerCase();
(acc[k] = acc[k] || []).push(t);
return acc;
}, {});
const html = Object
.entries(data)
.map(([ k, v ]) => `<div class="hua-rotate">${k}</div><ul class="${k}-litter">${v.join('')}</ul></div>`)
.join('');
item.insertAdjacentHTML('afterend', html);
item.remove();
});