Изменить элементы массива
Имеется массив такого вида
[ [ 'Alex', '167%', '45%' ],
[ 'Benjamin', '12%', '0%' ],
[ 'Elijah', '117%', '115%' ],
[ 'Liam', '56%', '5%' ],
[ 'Theodore', '135%', '114%' ],
[ 'Mia', '128%', '100%' ] ]
необходимо привести его к такому виду
[ [ 'Alex 167% 45%' ,
[ 'Benjamin 12% 0%' ,
[ 'Elijah 117% 115%' ,
[ 'Liam 56% 5%' ,
[ 'Theodore 135% 14%' ,
[ 'Mia 128% 100%' ]
т.е. мне необходимо каждому первому элементу всем вложенным массивам добавить в конце такое количество пробелов, чтобы длинна этого элемента стала ровной 18 символов, а второму и третьему элементу добавить спереди пробелы, чтобы их длинна стала равна 6 символов (итого 30 символов).
Для примера массивов с двумя элементами есть вот такой код:
const items = [
['Alex', '167%'],
['Benjamin', '127%'],
['Elijah', '117%'],
['Liam', '136%'],
['Theodore', '135%'],
['Mia', '128%']
];
const combined = items.map(([name, percent]) =>
name.padEnd(29 - percent.length, ' ') + percent
);
console.log(combined);
как его можно модифицировать под мою задачу? Спасибо
Ответы (1 шт):
Автор решения: BigCubeCat
→ Ссылка
Используйте padStart
let items = [ [ 'Alex', '167%', '45%' ],
[ 'Benjamin', '12%', '0%' ],
[ 'Elijah', '117%', '115%' ],
[ 'Liam', '56%', '5%' ],
[ 'Theodore', '135%', '114%' ],
[ 'Mia', '128%', '100%' ] ]
items = items.map(
([name, first, second]) => name.padEnd(18, " ") + first.padStart(6, " ") + second.padStart(6, " ")
)
items.map(item => console.log(item))