Доступ к свойствам длинноцепочечного JSON в JavaScript - PullRequest
1 голос
/ 05 апреля 2019

Это кажется странным сомнением, но хотелось бы узнать об этом.

В моем проекте vanilla javascript необходимо получить доступ к различным свойствам внутри объекта.

Рассмотрим

{
students: {
 insideProperty1: {
  insideproperty2: {
   insideProperty3: {
    pro1: 1,
    pro2: 2,
    pro3: 3,
    .
    .
    .
    }
   }
  }
 }
}

Мне нужно получить доступ к внутренним свойствам

Использую ли я

students.insideProperty1.insideProperty2.insideProperty3.pro1
students.insideProperty1.insideProperty2.insideProperty3.pro2
students.insideProperty1.insideProperty2.insideProperty3.pro3

или

const proVar = students.insideProperty1.insideProperty2.insideProperty3;
proVar.pro1
proVar.pro2
proVar.pro3

я спросил, что мой сценарий будет оптимизирован и сжат в процессе производства (с использованием uglifyjs и других), так что мне нужно позаботиться об этом при разработке, или сценарии оптимизации позаботятся об этом?

Ответы [ 3 ]

1 голос
/ 05 апреля 2019

Вы можете сделать еще короче с разрушением массива.

const { pro1, pro2, pro3 } = students.insideProperty1.insideProperty2.insideProperty3;
1 голос
/ 05 апреля 2019

Чем позже.

1) Он более читабелен (вот что важно)

2) Он короче (меньше кода -> меньше кода для загрузки -> быстрее загружается)

В своем коде вы создаете тысячи переменных, выделяете миллионы объектов и массивов.Одна переменная не имеет значения.

0 голосов
/ 05 апреля 2019

Это зависит от того, хотите ли вы прочитать все свойства, которые вы хотите, просто хотите, чтобы некоторые из них также зависели от общего количества свойств в JSON. Предположим, у вас есть только 3 свойства в вашем JSON, поэтому лучше использовать первый метод, потому что он будет занимать меньше памяти, но если вы хотите прочитать все свойства, а количество свойств велико, вам следует перейти ко второму методу ,

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...