Como adicionar referência dentro de uma variável

Olá, gostaria de tirar uma dúvida!

Estou fazendo um bot em que determinado momento eu pego a resposta de uma requisição HTTP através de uma variável chamada response e imprimo assim o .JSON:

{{response}}, só que em determinado momento eu precisei escrever da seguinte forma: {{[email protected]{{retornoMoeda}}BRL.name}} pelo fato do response depender de retornoMoeda que é uma variavel que vem do blobo anterior. Só que claramente abrir e fechar colchetes-duplos dentro de outro colchetes-duplos não funcionou.

Então, queria saber qual o jeito correto (seria aspas simples? duplas? parenteses?) de chamar a variavel (retornoMoeda) dentro de outra variavel (response), se é que é possível de fazer isso…

Desde já agradeço!!

2 curtidas

Matheus,

Acabei de ver essa postagem, pode ser que ajude você, uma possível solução seria concatenar esses valores via script:

3 curtidas

Hey @Matheussodre !
Boas-vindas à Comunidade! :tada: Já que você está chegando agora, vá até a seção Comece Aqui . Nela, você encontra os Primeiros Passos que devem ser dados agora que você é oficialmente um Blipper :blue_heart:


Eu estava explorando aqui umas possíveis soluções e não foi possível fazer essa concatenação das variáveis direto no componente de texto, como seu exemplo {{[email protected]{{retornoMoeda}}BRL.name}}.

O que seria possível é você rodar um script passando essas duas variáveis de entrada: response e retornoMoeda, e concatenando elas no objeto do JSON, segue um exemplo:

Pensando que o seu JSON retorne algo tipo:

{
    "BRL":{
       "name":"Real"
    },
    "USD":{
       "name":"Dollar"
    }
 }

O seu script seria:

function run(response, moeda) {
  response = JSON.parse(response);
  return response[`${moeda}`].name;
}

Pronto, dai é só salvar o script em uma variável e apresentar essa variável.

Qualquer dúvida é só mandar uma mensagem aqui.
Espero que te ajude.

Abraços.

3 curtidas

Perfeito @GabrielPetrone , fiz >quase< que exatamente assim e funcionou perfeitamente. Muito obrigado!! Obrigado também pela ajuda @Pedro_Benevides !!

Segue abaixo meu código:

function run(response,saidaCota) {

            var dadoTreated = JSON.parse(response);
            var moeda;

            moeda = saidaCota;
            moeda += "BRL";

            return dadoTreated[moeda].name;

}

4 curtidas