Как правильно перевести объект в массив?

Работаю с моделью loopback3. Использую хук, что помогает мне определять изменения в модели - before save. Данные получаю из контекста - ctx.data.

Перевожу объекты в массив:

function transleteArray(obj) {
  const array = [];
  for (let str in obj) {
    if (obj.hasOwnProperty(str)) {
      array.push(str)
    }
  }
  return array;
}

Массивы выглядят непонятно:

New Array:  [
  '__cachedRelations',
  '__data',
  '__dataSource',
  '__strict',
  '__persisted'
]

Объект в изначальном виде выглядел так:

New Modal:  {
  no: 123,
  print: '123',
  colorQty: 0,
  id: 602
}

Что не так делаю и как правильно перевести объект в массив?
  • Вопрос задан
  • 149 просмотров
Решения вопроса 1
ProgrammerForever
@ProgrammerForever
Учитель, автоэлектрик, программист, музыкант
Объект и массив - концептуально разные вещи. Массив, как правило, содержит схожие сущности: только строки, только числа, только объекты какого-то класса. Объект же - наоборот, может содержать всё что угодно, и это нормально.
Если, несмотря на всё, хотите получить значения объекта, то код простой:
function transleteArray(obj) {
   return Object.values(obj);
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы