Сохранить тот же объект в массив - PullRequest
0 голосов
/ 07 июня 2018

У меня есть функция, которая добавляет книгу в мою базу данных.Запись сохраняется в массив каждый раз, когда она удовлетворяет критериям.Блок else сохраняет должным образом, но блок if сохраняет только вторую часть.Как сохранить обе бухгалтерские книги в моем блоке if в массив?

 //function that pushes the ledger
 .......
 for (let i = 0; i < myledger.length; i++) {
     if (myledger[i].type === 'test' || myledger[i].type === 'Security' 
        || myledger[i].type === 'Books'){

            myledger.push(i)
    }



 if(status === active){
      record {
         type: "Books",
         Fee: 3000
      },
      record {
         type: "Security",
         Fee: 1000
      },
   }
   else {
      record {
         type: "test",
         Fee: 10000
      }
   }

Ответы [ 2 ]

0 голосов
/ 07 июня 2018

Проблема только с вашим многообъектным назначением.Вы пытались добавить два объекта одновременно, но из-за ошибки оператора второй перекрывает первый.

Попробуйте использовать простой метод массива.

records = [
    {
        type: "Books",
        Fee: 3000
    },
    {
        type: "Security",
        Fee: 1000
    }
];
0 голосов
/ 07 июня 2018

Я полагаю, что проблема заключается здесь:

  record {
     type: "Books",
     Fee: 3000
  },
  record {
     type: "Security",
     Fee: 1000
  },

Я полагаю, вы пытаетесь добавить каждую из этих записей в массив записей, но допустили синтаксическую ошибку.То, что вы делаете сейчас, больше похоже на определение свойства объекта 'запись' - поскольку вы определяете его дважды, второе свойство записи перезаписывает первое.

Вместо этого вы, вероятно, захотите сделать что-то вродеthis:

records.push(
    {
        type: "Books",
        Fee: 3000
    },
    {
        type: "Security",
        Fee: 1000
    }
);

Конечно, точная реализация зависит от того, что вы пытаетесь сделать.Надеюсь, это поможет.

...