Как правильно сформировать массив js

Есть массив объектов

0: 'tkm': [0.18, 1.29, 0.11, 4.1],
1: 'tsm': [0.14, 1.21, 0.15, 4.5],

введите сюда описание изображения

Я бы хотел его отформатировать и привести к виду:

0: ['tkm', 0.18, 1.29, 0.11, 4.1],
1: ['tsm', 0.14, 1.21, 0.15, 4.5],

Тем самым перенести ключ в значение. Пытаюсь реализовать это, но у меня числа в текст как одно значение выводятся

          let refactor= $.map(JSON.parse(JSON.stringify(key)), (value, i) => {
                $.extend(value, {name: i})
          }

          console.log( [String(Object.keys(key))+','+refactor] );

Уже сижу над этой глупостью много времени, прошу помощи.


Ответы (3 шт):

Автор решения: Паша Харченко
let refactor= $.map(JSON.parse(JSON.stringify(key)), (value, i) => 
$.extend(value, { name: i }));

let obj = refactor;
obj.unshift(Object.keys(key)[0]);
→ Ссылка
Автор решения: ΝNL993

Вы хотели вот так?:

let arr = [
  { 'tkm': [0.18, 1.29, 0.11, 4.1] },
  { 'tsm': [0.14, 1.21, 0.15, 4.5] },
]

arr = arr.map((e, i, a) => {
  let key = Object.keys(a[i])[0]
  return [key].concat(e[key])
})


console.log(arr)

Объяснение

Через метод map в callback'е мы передаём аргументы e (Текущий элемент), i (Текущий индекс элемента) и a (Текущий массив), дальше бы берём ключ из отталкиваясь от текущего индекса и сохраняем его в переменную, и возвращаем массив с ключом, который соединённый с текущим массивом и так на каждой интерации.

→ Ссылка
Автор решения: Pavel Nazarian

let arr = [{'tkm': [0.18, 1.29, 0.11, 4.1]},{'tsm': [0.14, 1.21, 0.15, 4.5]}];
let new_arr = arr.map(el => [Object.keys(el)[0],...Object.values(el)[0]])
console.log(new_arr);

→ Ссылка