@Artem0071
Безработный mr. Junior

Как убрать (прямое?) клонирование в JS?

Есть такой код:
setOptions (optionIds) {
      console.log(optionIds) // Сюда приходит массив 
      let toAdd = optionIds // Тут пытался отвязаться от массива
      this.itemOptionIds = optionIds // Тут важно передать именно начальный массив

      this.item.options = this.item.options.filter(option => {
        let index = toAdd.indexOf(option.value)
        if (index > -1) {
          toAdd.splice(index, 1)
          return true
        }
        return false
      })

      toAdd.forEach(id => {
        this.item.options.push(this.findOption(id))
      })
      console.log(optionIds) // Тут возвращаяется уже измененный массив, хотя никаких операций с "optionsIds" я не производил, при этом так же меняется и "this.itemOptionIds"
    },


Мне нужно как то сделать так, чтобы в "this.itemOptionIds" был исходный массив который и пришел, но тут видимо все массивы ссылаются только на один и когда его меняешь, то меняются все остальные
Как можно от этого избавиться?
  • Вопрос задан
  • 52 просмотра
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы