Salida deseada--
[ { "group1": { "Token1": "123443423", "Token2": "121414141" }, "group2": { "Token1": "123443423", "Token2": "121414141" } } ]Group1 y group2 son dinámicos y también el valor token1 y token2 es dinámico. Así que escribo de esta manera -
[ {`${group1}`:{ "Token1" : `${token1}`, "Token2" : `${token2}` }, `${group2}`:{ "Token1" : `${token1}`, "Token2" : `${token2}` } }] Pero ${group1} muestra un token de error inesperado ` (plantilla alfabetizada).
1. [Específico]
// helper function function createGroup(groupName, token1, token2) { const group = {}; group[groupName] = { Token1: token1, Token2: token2 }; return group; } //and then create a result output var result = [ createGroup('group1', group1token1, group1token2), createGroup('group2', group2token1, group2token2), ]2. [Más general] Para múltiples parámetros (más de fijo 2):
sus parametersObject tiene que ser como:
{ Token1: 'token_1_value_here', Token2: 'token_2_value_here', ... ParameterN: 'parameter_n_value_here', ... }Y entonces:
// helper function 2 function createGroup(groupName, parametersObject) { const group = {}; group[groupName] = parametersObject; return group; } //and then create a result output var result = [ createGroup('group1', group1parametersDto), createGroup('group2', group2parametersDto) ]a su manera, puede crear objetos con valores variables de esta manera. hubo un error de sintaxis en su enfoque, los literales de plantilla no están permitidos para la clave de objeto dentro del objeto directamente
var group = "group", Token1 = "123443423", Token2 = "121414141" var newObject = { [group + "1"] : {Token1 , Token2}, [group + "2"] : {Token1 , Token2}, [group + "3"] : {Token1 , Token2}, [group + "4"] : {Token1 , Token2} } console.log(newObject)también hay una manera más fácil de hacer lo mismo, que es un ejemplo más conveniente a continuación
var object = {}, Token1 = "123443423", Token2 = "121414141" object["group1"] = {Token1,Token2} object["group2"] = {Token1,Token2} object["group3"] = {Token1,Token2} console.log(object)