@Lucas_Camara porque na variável “icms” você coloca " valor(uf)"?
Lucas_Camara
Isso significa que a função valor declarada no início do código está sendo invocada passando a uf como parâmetro. O resultado dessa chamada (avaliado pelo switch) será atribuído à variável icms.
L
Luciano_Trind
Entendi! Muito obrigado. um dia eu chego nesse nível.
L
Luciano_Trind
Mais uma pergunta,
Porque as variáveis vão depois da função e não antes?
Lucas_Camara
Se a variável icms for declarada antes da função valor, vai dá erro falando que a função valor não existe.
L
Luciano_Trind
Então sempre terei que fazer dessa forma?
Lucas_Camara
No JS, há um conceito chamado hoisting, que permite vc declarar funções ou variáveis fora de ordem, que, ao executar, vai funcionar do mesmo jeito. Porém, isso não se aplica a function expressions (que é o que vc usou no seu código) ou se o código estiver num escopo com 'use strict';.
L
Luciano_Trind
Entendi, pra mim a variável vinha entes da função.