Проверьте вложенный JSON в Javascript / Typescript, чтобы увидеть, являются ли данные нулевыми до операции - PullRequest
0 голосов
/ 17 февраля 2020

Есть ли более простой способ в Typescript / Javascript проверить, является ли вложенный JSON объект нулевым, а затем установить значение? Прямо сейчас нам нужно просмотреть 4 слоя данных, чтобы проверить, не являются ли они нулевыми, и затем мы можем выполнить операцию для установки значения. Интересно, есть ли более простой синтаксис?

if (this.addressEntryConfig
    && this.addressEntryConfig.addressModel
    && this.addressEntryConfig.addressModel.partyMailingAddress 
    && this.addressEntryConfig.addressModel.partyMailingAddress.address) {

    this.addressMailingInputData = this.addressEntryConfig.addressModel.partyMailingAddress.address;
}

Ресурс: Проверка на наличие вложенного JavaScript ключа объекта

1 Ответ

3 голосов
/ 17 февраля 2020

В Typescript вы можете использовать необязательную цепочку ...

this.addressEntryConfig?.addressModel?.partyMailingAddress?.address

Она будет возвращать значение адреса, только если остальные свойства не равны NULL или не определены. Если какие-либо равны null или не определены, он остановит обработку и просто вернет undefined.

Если вы можете сделать другие слова:

if (this.addressEntryConfig?.addressModel?.partyMailingAddress?.address)
    this.addressMailingInputData = this.addressEntryConfig.addressModel.partyMailingAddress.address;

Подробнее о выпуске TypeScript 3.7 страница заметок здесь: https://www.typescriptlang.org/docs/handbook/release-notes/typescript-3-7.html#optional -цепь

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