Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Изменить значение свойства объекта (https://javascript.ru/forum/misc/84227-izmenit-znachenie-svojjstva-obekta.html)

lgick 13.07.2022 14:09

Изменить значение свойства объекта
 
Нужно изменить свойство в многомерном объекте с проверкой:

if (state.moduleData[module.id]) {
        if (state.moduleData[module.id][module.property]) {
          state.moduleData[module.id][module.property] = module.value;
        }
      }


как ещё можно написать этот код используя новые фичи js?

voraa 13.07.2022 15:16

if (state.moduleData[module.id]?.[module.property]!==undefined)
    state.moduleData[module.id][module.property] = module.value;

При присваивании короче никак

В вашем примере
if (state.moduleData[module.id][module.property]) {
А если есть, но равно 0 или false?

lgick 13.07.2022 23:22

Цитата:

Сообщение от voraa (Сообщение 546640)
if (state.moduleData[module.id]?.[module.property]!==undefined)
    state.moduleData[module.id][module.property] = module.value;

При присваивании короче никак

В вашем примере
if (state.moduleData[module.id][module.property]) {
А если есть, но равно 0 или false?

да, согласен нужно явно проверять на наличие свойства


Часовой пояс GMT +3, время: 16:42.