un caso in cui ho voluto che era il luogo dove i nomi di proprietà per JSON sono stati definiti nel file generati, in base al largo classi Java.
// Generated
var SomeJsonBodyParams = {NAME: 'name', ID: 'id', ETA, 'estimatedTimeOfArrival'};
// Using it
sendAjax('some/url', {
[SomeJsonBodyParams.NAME] = userData.name,
...
});
avevamo anche un metodo così potevamo tipo di farlo
function makeObj() {
var obj = {};
for (var i=0; i < arguments.length; i+=2) {
obj[i] = obj[i+i];
}
return obj;
}
sendAjax('some/url', makeObj(
SomeJsonBodyParams.NAME, userData.name,
...
));
fonte
2016-01-11 18:22:46
non potrebbe essere utilizzato per calcolare un valore di una proprietà che rappresenta il prezzo + tasse o simili? –
@SamHolder Quella sarebbe una vera proprietà dinamica, ma l'OP sta parlando di nomi di proprietà dinamiche, dall'esempio nella domanda. –
Dai un'occhiata al nostro canonico [Uso di una variabile per una chiave in un oggetto JavaScript letterale] (http://stackoverflow.com/q/2274242/1048572) e tutte le sue domande collegate per una panoramica dei casi d'uso – Bergi