Ich habe mich nur gefragt, ob es eine Möglichkeit gibt, Objektschlüsselwerte mit einem Symbol oder einer Zahl als neuem Namen umzubenennen. Ich weiß, dass Sie ein Objekt wie folgt umbenennen können:

let totalValues = {3V: 2.09, fg%V: 3.02}
const {'3V': threev, 'fg%V': fgV } = totalValues;
totalValues = {threev, fgV };

Gibt es eine Möglichkeit, die Werte so umzubenennen, wenn sie funktionieren?

let totalValues = {3V: 2.09, fg%V}
const {'3V': 3PM, 'fg%V': FG%} = totalValues;
totalValues = {3PM, FG%};
0
cookiewaffles 17 Aug. 2020 im 17:45

3 Antworten

Beste Antwort

Sie können Objekte wie den Namen from:to erstellen

const totalValues = { '3V': 2.09, 'fg%V': 3.02, do_not_rename: 1 };
const renameFromTo = {
    '3V': '3PM',
    'fg%V': 'FG%',
};

const result = Object.entries(renameFromTo).reduce(
    (acc, [from, to]) => ({ ...acc, [from]: undefined, [to]: acc[from] }),
    totalValues,
);

console.log(result);
0
Nikita Madeev 17 Aug. 2020 im 14:54

In javaScirpt hat das Benennen von Variablen bestimmte Regeln. Sie können einen Variablennamen nicht mit einer Zahl beginnen oder ein Sonderzeichen außer _ verwenden. Während der Zerstörung erstellen Sie also tatsächlich Variablen, sodass Sie die Regeln befolgen müssen. Überprüfen Sie es

0
Beso Kakulia 17 Aug. 2020 im 14:58

% ist ein ungültiges Symbol, wenn ein Variablenname deklariert wird. Bei der Benennung von JSON-Objekten ist dies jedoch zulässig.

Sie können so umbenennen und dekonstruieren, solange die Variable, in die Sie umbenennen, legal ist.

Zahlen sind in Variablen gültig, solange sie von einem nicht numerischen Wert begleitet werden.

let totalValues = {'3V': 2.09, 'fg%V': 3.02};
let { 'fg%V': fgv } = totalValues;
console.log(fgv); // 3.02

Viel Spaß beim Codieren!

0
erwijet 17 Aug. 2020 im 14:57