重命名对象数组中的对象属性

Jim*_*ver 4 javascript arrays destructor object

我有以下结构:

const data = {
    invoices: [
        {
            Date: "2018-12-18T00:00:00.000Z",
            InvoiceNumber: "59"
        },
        {
            Date: "2018-12-18T00:00:00.000Z",
            InvoiceNumber: "59"
        }
    ]
};
Run Code Online (Sandbox Code Playgroud)

我想将 InvoiceNumber 的所有实例重命名为 CreditNoteNumber 以提供以下信息:

const data = {
    invoices: [
        {
            Date: "2018-12-18T00:00:00.000Z",
            CreditNoteNumber: "59"
        },
        {
            Date: "2018-12-18T00:00:00.000Z",
            CreditNoteNumber: "59"
        }
    ]
};
Run Code Online (Sandbox Code Playgroud)

例如,我尝试了以下各种方法:

var changed = data.invoices.map(function(item) {
    return {
        ...data.invoices,
        CreditNoteNumber: item.InvoiceNumber
    };
});
Run Code Online (Sandbox Code Playgroud)

然而,价差将 CreditNoteNumber 推到对象之外。

Siv*_*K V 9

只需使用解构并重命名

const data = {
  invoices: [
    {
      Date: "2018-12-18T00:00:00.000Z",
      InvoiceNumber: "59"
    },
    {
      Date: "2018-12-18T00:00:00.000Z",
      InvoiceNumber: "59"
    }
  ]
};

var changed = data.invoices.map(
  ({ Date, InvoiceNumber: CreditNoteNumber }) => ({ Date, CreditNoteNumber })
);

console.log(changed);
Run Code Online (Sandbox Code Playgroud)