Чтение из файла JSON, имя переменной другое, не совпадает - PullRequest
0 голосов
/ 30 апреля 2018

Я пытаюсь прочитать из файла JSON, но он отформатирован следующим образом:

[
    {
        "INV#" : "123"
    },
    {
        "INV#" : "456"
    }
]

Это имя переменной не соответствует именам JavaScript или TypeScript. Итак, у меня есть следующий объект:

export interface Invoice {
    invoiceNumber: number;
}

class myclass {
    private inv: Invoice[];
}

Как я могу прочитать из этого файла JSON в этот объект. Вносить изменения в переменную базы данных нельзя. Изменение имени моей интерфейсной переменной невозможно в JavaScript. Каким-то образом они должны соответствовать, но должен быть способ сделать свойство объекта моим.

1 Ответ

0 голосов
/ 30 апреля 2018
// let's assume that you've read the json into some variable
let response = [
    {
        "INV#" : "123"
    },
    {
        "INV#" : "456"
    }
];

export interface Invoice {
    invoiceNumber: number;
}

class myclass {
    private inv: Invoice[];
    constructor(_response: any[]) {
        // do not forget to check _response for null/undefined, if it is an array or not, etc.
        this.inv = _response.map(obj => <Invoice>{
            invoiceNumber: parseInt(obj['INV#'])
        });
    }
}

// usage:
let some_var = new myclass(response);

// now some_var contains array of invoices internally.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...