Questão 49 · Informática: Programação e algoritmos
Em um programa Javascript, encontra-se o seguinte comando: var x = 3 + "4"; Após a execução deste comando, a variável x conterá:
- A) a cadeia "34";
- B) o número 34;
- C) a cadeia "7";
- D) o número 7;
- E) o mesmo de antes da execução do comando, devido a um erro referente à conversão de tipos.
Marque a alternativa correta:
Gabarito: A
Gabarito definitivo divulgado pela banca FGV (TCE/SE 2015).
Comentário
Gabarito: A.
Em JavaScript, quando o operador + recebe um operando do tipo string, ele realiza concatenação, e não soma. O número 3 é convertido para o texto "3" e unido ao "4":
- 3 + "4" → "3" + "4" = "34"
A variável x passa a conter a cadeia (string) "34".
Por que as outras estão erradas:
- (B) o número 34: exigiria conversão numérica, que não ocorre com o
+quando há uma string. - (C) a cadeia "7": não é resultado de nenhuma operação do código.
- (D) o número 7: seria a soma 3 + 4, mas o "4" é uma string e não é convertido para número nesse caso.
- (E) o mesmo valor de antes: não há erro, pois a concatenação é válida.
Dica de prova: a pegadinha é o comportamento do + em JavaScript. Se um operando for string, há concatenação. Operadores como -, * e / convertem os operandos para número.
Fundamentos: Coerção de tipos em JavaScript · Operador + com strings (concatenação) · Diferença entre + e outros operadores aritméticos
Comentário gerado pela Cravei IA a partir do enunciado e do gabarito definitivo divulgado pela banca, e conferido por uma verificação automática. A IA pode errar: o gabarito oficial sempre prevalece.
Fonte: prova FGV TCE/SE 2015 (Analista de Tecnologia da Informação - Desenvolvimento), questão 49, com o gabarito definitivo da banca. Comentário: Equipe Cravei · como fazemos e revisamos.