предотвратить изменение объекта и массивов в JavaScript - PullRequest
0 голосов
/ 04 марта 2019

, как вы знаете, в javascript объекты и массивы отправляются по ссылке, и если мы получили что-то вроде этого:

const obj=[{room:5},{room:35},{room:25},{room:15}];

static test(obj)
  {
    for (let i=0;i<obj.length;i++)
    {
      obj[i].room++;
    }
    return obj;
  }
return {ok:true,D:obj,R:this.test(obj)};

, тогда значения первого объекта изменились бы после вызова test, вопрос в том, как предотвратитьпередача объекта по ссылке и его модификации! ??!

1 Ответ

0 голосов
/ 04 марта 2019

Вы можете использовать копию своего объекта или массива:

Объект

const copy = JSON.parse(JSON.stringify(obj))

Массив

const copy = array.slice(0)
...