Object.entries + деструктуризация:
for (const [ index, el ] of Object.entries(elems)) {
...
Надо только иметь в виду, что тут index будет строкой. Чтобы получать числа, можно позаимствовать метод entries у Array или NodeList:
for (const [ index, el ] of Array.prototype.entries.call(elems)) {
...
Или, превращать получаемую HTMLCollection в массив:
const elems = [...document.getElementsByClassName('one')];
for (const [ index, el ] of elems.entries()) {
...
Или, для получения элементов вместо getElementsByClassName использовать querySelectorAll, возвращающий NodeList:
const elems = document.querySelectorAll('.one');
for (const [ index, el ] of elems.entries()) {
...