Material de Estudo JavaScript
Material de Estudo JavaScript
1
String + número
var nome = “Bruna”;
var idade = 18;
console.log(nome + “ “ + “tem” + “ “ + idade + “ “ + “anos”) // retorna “Bruna tem 18
anos”
var vs let
Ambas são palavras reservadas usadas para declarar uma variável;
Ambas suportam dados numéricos e strings;
Ambas realizam operações e concatenações; Determinados por {}
Porém, let somente será acessível dentro dos blocos de código em que for declarada. Já a var
só precisa ser declarada uma única vez.
Booleanos
2
Módulo 02: Funções
Bloco de código que pode ser invocado;
Realiza uma tarefa específica e retorna um valor;
Podemos agrupar o código que será utilizado várias vezes.
Declarando uma função:
*Os parâmetros devem sempre estar entre parênteses. Se não houver parâmetro, deve ser
escrito “()”;
**O código a ser executado pela função deve sempre vir entre {}.
3
function nomeCompleto(nome, sobrenome) {
return nome + “ “ + sobrenome
}
console.log(nomeCompleto(“Bruna”, “Melloni”) // retorna “Bruna Melloni”
“biblioteca”.length // retorna 10
Funções Math
function gerarProbabilidade ( ) {
return Math.random * 100
}
console.log(gerarProbabilidade( )) // retorna um número aleatório em porcentagem
4
Módulo 03: Condicionais
Operadores Lógicos: permitem manipular o valor das variáveis, realizar operações e comparar
seus valores.
Existem 3 operadores: e (and); ou (or); negação (not)
AND (&&) OR ( || ) NOT ( ! )
As operações sempre retornarão um valor booleano (true ou false)
5
* O símbolo para diferente é !=
** O símbolo para igual (fora de uma declaração de variável) é ===
function eNumeroDaSorte(numero) {
return numero > 0 && numero != 15 && numero%3 == 0 || numero%2 == 0
}
console.log(eNumeroDaSorte(7) // retorna false
Assim como nas operações matemáticas, as expressões booleanas podem ser organizadas
com ( ), para dar preferências à ordem. Por exemplo:
Função podeSeAposentar:
6
Considerando que a idade mínima para aposentadoria para mulheres é 60 anos, enquanto para
os homens é 65. Emambos os casos, deve-se ter pelo menos 30 anos de contribuição.
Função medalhaSegundoOPosto(numero):
Para determinar a medalha de acordo com a colocação, considerando: 1- ouro; 2- prata; 3-
bronze; 4 ou mais: “continue tentando”.
function medalhaSegundoOPosto(numero) {
if (numero == 1) {
return “ouro” }
if (numero == 2) {
return “prata” }
if (numero == 3) {
return “bronze” }
if (numero >3) {
return “continue tentando” }
}
console.log(medalhaSegundoOPosto(2) // retorna “prata”
Nos permitem repetir instruções de maneira simples, um certo número de vezes, desde que
uma condição seja cumprida.
7
A estrutura do ciclo for é composta por 3 partes, definidas dentro de parênteses, determinando
como as repetições serão realizadas, e definir as instruções que queremos realizar em cada
uma.
Início: identificado como uma variável (var ou let), indica a contagem inicial;
Condição: indica a condição para a repetição ser executada;
Modificador: indica a diferença entre cada repetição.
Função imprimirAzul4( ):
Uma função que imprima a palavra “Azul” 4 vezes.
O contador inicial chamado de var i, e começamos sua contagem no 0. Seguindo a sua
condição i < 4, definimos que a rtepetição só deve ocorrer enquanto o i for menor que 4.
A cada repetição, o nosso i somará 1.
function imprimirAzul4 ( ) {
for (var i = 0; i < 4; i++)
console.log(“Azul”)
}
console.log(imprimirAzul4( )) // retorna “Azul” “Azul” “Azul” “Azul”
8
i = 2 // retorna “Azul” “Azul” “Azul”
i = 3 // retorna “Azul” “Azul” “Azul” “Azul”
i = 4 // para a contagem
Outro exemplo:
function passandoPor ( ) {
for (var i = 0; i < 5; i++)
console.log(“aqui eu tenho o valor de” + “ “ + i) } // retorna
“aqui eu tenho o valor de 0”
“aqui eu tenho o valor de 1”
“aqui eu tenho o valor de 2”
“aqui eu tenho o valor de 3”
“aqui eu tenho o valor de 4”
Usando if em um ciclo:
Função passandoPelosPares( ) que retorna um string para cada valor par entre 0 e 6.
function passandoPor ( ) {
for (var i = 0; i < 7; i++)
if (i%2 == 0; i++){
console.log(“aqui eu tenho o valor de” + “ “ + i)}
}
console.log(passandoPor( )) // retorna
9
function repetirAlgoXVezes(x) {
for (var i = 0; i < x; i++) {
console.log(“algo”)
}
console.log(repetirAlgoXVezes(3) // retorna
“Algo”
“Algo”
“Algo”
Função caloriasDeCoxinhas(quantidadeDeCoxinhas):
Calcula a quantidade de calorias ganhas de acordo com a quantidade de coxinhas consumidas.
Considerando-se que a cada coxinha haja um ganho total de 300 calorias.
function caloriasDeCoxinhas(quantidadeDeCoxinhas) {
var totalCalorias = 0;
for (var i = 0; i < quantidadeDeCoxinhas; i++) {
totalCalorias = totalCalorias + 300;
} return totalCalorias
}
console.log(caloriasDeCoxinhas(3)) // retorna 900
***A função define uma variável (var) que inicia sua contagem em 0, a cada repetição do
ciclo, a função executa o código que soma 300 à variável, de forma acumulativa.
Mais um exemplo:
Função caloriasDeTrote(numeroDeVoltas), que retorna a quantidade de calorias consumida
em cada volta de trote. Considerando que a cada volta, são consumidas mais 5 vezes a
quantidade de voltas dadas.
10
function caloriasDeTrote(numeroDeVoltas) {
var totalCalorias = 0
for (i = 0; i <= numeroDeVoltas;i++) {
totalCalorias += i*5}
return totalCalorias
}
console.log(caloriasDeTrote(2)) // retorna 15 (1*5) + (2*5)
****O símbolo += representa uma soma à uma variável
Podemos também usar o recurso .length para saber quantos elementos um array possui:
var numeros123 = [1, 2, 3]
console.log(numeros123.length) // retorna 3
11
Podemos também adicionar e retirar elementos de um array usando os recursos .push e
.pop:
var umArray = [2, 7, 202] Deve-se indicar o elemento a ser adicionado entre
parênteses
umArray.push(103) O recurso .push adiciona um elemento no final do array
console.log(umArray) // retorna [2, 7, 202, 103]
var umArray = [2, 7, 202, 103] O recurso .pop remove o último elemento de um
umArray.pop array
console.log(umArray) // retorna [2, 7, 202, 103]
Com esses dois recursos, podemos mover elementos entre arrays. Por exemplo:
Função mover(umArray, outroArray)
Retira o último elemento do primeiro array e o adiciona no segundo.
Recurso .indexOf
Retorna um valor numérico referente à posição do elemento usado como parâmetro:
var meuArray = [“bruna”, “danilo”]
var maisLindo = meuArray.indeOf(“danilo”) // retorna 2
Se pedirmos por um elemento que não pertence ao array, o código retornará um número
negativo, portanto, podemos usar esse recurso para sabermos quais elementos são
pertencentes ao array:
function contem(array, elemento) {
return array.indexOf(elemento) >=} // retornará true ou false
console.log (contem(maisLindo, “danilo”) // retorna true
Função medalhaDeAcordoComOPosto:
12
Refazendo a função feita anteriormente, podemos usar um array para nos ajudar. Usando
apenas um recurso if.
A medalha será definida de acordo com a posição do participante, sendo 1- ouro, 2- prata, 3-
bronze, 4+- continue tentando.
*Nessa função, foi criada uma condicional que retorna um elemento do array de acordo com o
número indicado, representando a posição. Foi definido também que se esse valor numérico
for maior ou igual à quantidade de elementos no array (4), será devolvido o string “continue
tentando”. Lembrando que, como o primeiro elemento de um array está na posição 0, o
primeiro elemento do array declarado também é o string “continue tentando”.
Ciclos de array
É possível criarmos um ciclo de array, quando desejarmos realizar uma operação matemática
acumulativa.
**A cada repetição, será somado o valor do elemento na posição indicada pelo i.
Função quantidadeDeMesesComLucro(umPeriodo):
Baseado na função anterior, que contabilizou o lucro total durante um período específico,
vamos agora calcular em quantos meses houve lucro.
function quantidadeDeMesesComLucro(umPeriodo) {
var quantidade = 0;
for (var mes = 0; mês < umPeriodo.length; mês++) [
if (umPeriodo[mês] > 0)
quantidade += 1}
return quantidade
}
13
console.log(quantidadeDeMesesComLucro(umPeriodo)) // retorna 6
Função saldosDeMesesComLucro(umPeriodo)):
Seguindo a mesma linha do exemplo anterior, a função agora deve retornar um array com os
saldos dos meses com lucro.
Função naipeDeTruco:
Dado um parâmetro, indicando um naipe, retorna uma lista de strings (array), uma por cada
carta desse naipe. Lembrando que num baralho de truco, são usadas todas as cartas numeradas
de 1 a 12, exetuando-se as cartas 8 e 9.
function naipeDeTruco(naipe) {
var cartas = [ ];
for (var = 1; i <= 12; i++) {
if (i != 8 && i!= 9)
cartas.push(i + “ “ + “de” + “ “ + naipe) }
return cartas
}
console.log(naipeDeTruco(copas)) // retorna [“1 de copas”, “2 de copas”, “3 de copas”... “12
de copas”]
Desafios:
1. Professora Furiosa
14
Com essa informação e a quantidade mínima de estudantes para que suceda
o curso, a professora quer saber se a aula acontecerá. Por exemplo, supondo
que a quantidade mínima de estudantes para que a aula aconteça é de 2
alunos, então o curso da segunda-feira se realizará, porque houve um
estudante que foi pontual e um estudante que chegou cedo.
acontece(alunosDaSegunda, 2)
true
acontece(alunosDaSegunda, 3)
false
Escreva as seguintes funções: 1. acontece, que diz se a aula sucederá de acordo com o array dos
estudantes que entraram. 2. aberturas, que utiliza um array com os arrays dos estudantes que
entraram nos outros dias, e a quantidade mínima de estudantes, e diga quais os dias em que as
aulas aconteceram e quais não. Por exemplo:
Resposta:
2. Produto
function produto(arrayNumeros) {
var multiplicacao = 1;
for (var i = 0; i < arrayNumeros.length; i++) {
multiplicacao *= arrayNumeros[i] }
return multiplicacao
}
3. Fatorial
Escreva uma função fatorial, que calcule o fatorial de um número.
Resposta:
4. Mais Menos
Necessitamos uma função maisMenos que receba um array e retorne outro
com os seguintes três números:
Resposta:
function maisMenos (umArray) {
var outroArray = [ ];
var positivo = 0;
var zero = 0;
var negativo = 0;
for (var i = 0; i <= umArray.length; i++){
if (umArray[i] > 0) positivo++;
if (umArray[i] == 0) zero++;
if (umArray[i] < 0) negativo++}
outroArray.push(positivo/umArray.length);
outroArray.push(zero/umArray.length);
outroArray.push(negativo/umArray.length);
return outroArray
}
5. Escada
6. Queremos representar uma escada com altura variável, utilizando um
array de strings.
7. Por exemplo, uma escada com altura 3, representaremos com o
seguinte array:
8. var escada3 = [
9. " #",
10. " ##",
11. "###"
12. ]
21. Escreva uma função escada que utilize uma altura (um número) e retorne um array que
represente a escada correspondente. Não esqueça que o espaço " " faz parte da resposta :)
Resposta:
22.Árvore Utópica
As árvores utópicas crescem de uma forma particular, em dois ciclos:
Se Laura planta uma árvore utópica com um metro, no final do outono, qual
seria sua altura depois de N ciclos?
Alguns exemplos:
Resposta:
18