Guia JavaScript Do Zero
Guia JavaScript Do Zero
JavaScript do Zero
Índice
Introdução ao JavaScript .................................................3
Meu 1º JavaScript........................................................... 8
Calculando com JavaScript............................................. 13
Manipulando texto.........................................................18
Condicionais.................................................................22
Operadores Lógicos........................................................ 31
Loops............................................................................38
Arrays...........................................................................45
Capítulo 1
Introdução ao JavaScript
Quando construímos um site ou software,
geralmente temos dois tipos de trabalho:
construir a interface* da aplicação (o visual) e
o seu comportamento.
Para criar esses algoritmos, usaremos uma das linguagens mais utilizadas atualmente no mundo, o
JavaScript.
Capítulo 2
Meu 1º JavaScript
Algoritmo Somar (recebe num1 e num2)
Nosso próximo passo é aprender a criar - soma num1 com num2
algoritmos utilizando JavaScript. Para isso, - retorna essa soma
primeiro precisamos saber onde o escrevemos
e executamos. Existem várias ferramentas que
nos permitem escrever JavaScript, uma delas
é o REPL, um editor online muito prático. Para representar o algoritmo acima em
JavaScript, podemos escrever:
Para simplificar, antes de fazer nossa
calculadora de médias, vamos implementar function somar(num1, num2) {
um algoritmo simples que soma apenas dois let soma = num1 + num2;
números: return soma;
}
Observe alguns conceitos no algoritmo
anterior:
somar(2, 3);
Exercício:
Abaixo estão alguns exercícios para você
praticar o que aprendemos até aqui.
Repare que utilizamos o // ... para inserir comentários em JavaScript. Comentários são trechos de código
que não serão executados e servem só para adicionar alguma anotação útil ao código
Você pode fazer várias operações de uma vez, let media = (10 + 2) / 2; // Resultado: 6
por exemplo:
Dica: isso é muito útil pra saber se um número é par ou ímpar. Basta olhar o resto da divisão dele por 2. Se
for 0, é par. Se for 1 é ímpar.
Exercício:
Abaixo estão alguns exercícios para você
praticar o que aprendemos até aqui.
Manipulando texto
Até agora manipulamos números com
JavaScript, mas muitas vezes precisamos let texto = “Esse é meu primeiro texto”;
também manipular textos, que na computação return texto;
chamamos de strings.
mesma forma:
Exercício:
Abaixo estão alguns exercícios para você
praticar o que aprendemos até aqui.
Condicionais
Quando precisamos desenvolver uma
aplicação, muitas vezes o comportamento das
funcionalidades muda dependendo de alguma
condição. se alguma_condicao
fazer tal coisa
Por exemplo: se um site é proibido para senão
fazer outra coisa
menores de idade, devemos ou não permitir o
acesso da pessoa, conforme sua idade.
if(...) {
Já o else (“senão em inglês”), pode ser ...
usado logo após o if, para executar algum } else {
// esse código só será executado caso a
outro código caso a condição dele não seja condição do if seja FALSA
verdadeira. }
Nem todo if precisa ter um else. Se você não function verificarMedia(media) {
quiser executar nada no caso contrário, basta if(media >= 7) {
return “Aprovado”;
utilizar somente o if, sem o else { ... }. } else if(media >= 5) {
return “Prova final”;
} else {
return “Reprovado”;
Se quiser checar várias condições de uma vez, }
você pode encadear mais ifs dessa forma: }
Repare que a construção do meio emenda um else e um if. Isso significa que ele só vai verificar a
condição do meio (maior ou igual a 5) se a primeira tiver sido falsa (a nota não foi maior ou igual a 7).
media > 7 // Maior que 7
media >= 7 // Maior ou igual a 7
Falando agora das condições que você pode media < 7 // Menor que 7
media <= 7 // Menor ou igual a 7
verificar dentro de um if, as mais comuns são: media == 7 // Igual a 7 (ATENÇÃO, SÃO DOIS
IGUAIS!)
media != 7 // Diferente de 7
Quando fazemos comparações em geral, isso nos dá um valor que pode ser verdadeiro ou falso. Por
exemplo, se a nota for 8, a comparação nota > 7 nos dará verdadeiro e o código de dentro do if será
executado**.** Porém se a nota for 5, a comparação nota > 7 dará falso e o código do if não será
executado.
Como na computação precisamos o tempo todo
fazer comparações e tomar decisões, esses
valores de verdadeiro ou falso tem até um if(true) {
nome especial: são chamados de booleanos. // sempre executará, pois true é sempre
verdadeiro
E você pode representá-los em JavaScript }
usando as palavras true (verdadeiro) ou false
(falso). if(false) {
// nunca executará, pois false é sempre falso
}
Por exemplo, se passarmos true para o if, ele
sempre executará (ou se passar false, nunca
executará):
let minhaVariavel = true;
Você também pode armazenar esses valores
em variáveis, por exemplo: if(minhaVariavel) { ... }
Operadores Lógicos
Vimos no último capítulo que dentro do if
podemos fazer comparações para o código
ser executado. Por exemplo, uma comparação
pode ser nota >= 7. Algoritmo aprovacao(recebe nota1, nota2, nota3 e
faltas)
- calcular media usando as notas
Quando trabalhamos com condicionais e - se a media for pelo menos 7 E TAMBÉM as
booleanos, uma situação muito comum é faltas forem menores que 10
- responder aprovado
querer levar mais de uma comparação em - senao (caso qualquer uma das comparações
consideração ao mesmo tempo. Por exemplo, acima forem falsas)
se a regra para alguém ser aprovado for: ficar - responder reprovado
com pelo menos 7 de média e ter menos
de 10 faltas. Teríamos um algoritmo mais ou
menos assim:
function aprovacao(nota1, nota2, nota3, faltas)
Fazer cada uma das comparação já sabemos. {
let media = (nota1 + nota2 + nota3) / 3;
A primeira é media >= 7 e a segunda é faltas
< 10. Mas como fazer aquele “e também” ali if(media >= 7 && faltas < 10) {
return “Aprovado”;
do meio? É simples, podemos usar o operador } else {
do JavaScript: && (dois “e-comerciais” juntos), return “Reprovado”;
chamamos esse operador de AND. }
}
function aprovacao(nota1, nota2, nota3, faltas)
{
let media = (nota1 + nota2 + nota3) / 3;
Repare que o operador && nos dá verdadeiro somente se ambas as condições forem verdadeiras. Se uma
delas ou ambas forem falsas, ele dará falso.
Existe também um outro operador para function classificado(notaVestibular, notaEnem) {
um caso muito comum: quando você está
let classificadoVestibular = (notaVestibular >=
interessado(a) em que pelo menos uma 8);
condição seja verdadeira. let classificadoEnem = (notaEnem >= 700);
if(classificadoVestibular || classificadoEnem) {
Por exemplo, imagina que o aluno pode ser return “Classificado”;
classificado pra uma faculdade em duas } else {
return “Desclassificado”;
situações: caso tire pelo menos 8 no vestibular }
da faculdade ou pelo menos de 700 no ENEM: }
Esse operador || (duas barras verticais coladas), chamado de OR, retorna verdadeiro quando pelo menos
1 das comparações forem verdadeiras. Ele só dará falso se ambas derem falso, ou seja, se o aluno não
passou nem pelo vestibular nem pelo ENEM.
function aprovado(nota1, nota2, faltas) {
let media = (nota1 + nota2) / 2;
...
}
Exercício:
Abaixo estão alguns exercícios para você praticar
o que aprendemos até aqui.
Loops
Quando implementamos algoritmos, em geral
queremos economizar nosso tempo de trabalho
manual. E isso é particularmente útil quando
alguma coisa precisa ser feita várias vezes.
Por exemplo, digamos que você queira repetir
alguma ação 100 vezes (calcular a média de
100 alunos de uma vez).
Em vez de while, você pode fazer a mesma for(let contador = 0; contador < 100;
coisa acima usando a segunda forma de se contador++) {
// esse código será executado 100 vezes
criar loops em JavaScript: a construção for. }
Dessa forma:
Exercício:
Abaixo estão alguns exercícios para você
praticar o que aprendemos até aqui.
Arrays
let nota1 = 5;
Até então, temos trabalhado com variáveis que let nota2 = 7;
guardam 1 valor cada uma, por exemplo: let nota3 = 10;
No código acima, se passássemos uma lista [10, 20, 30] por exemplo, ela retornaria a soma: 60.
Exercício:
Abaixo estão alguns exercícios para você praticar o que “Sabado”, pois avançar 5 dias a partir da segunda-feira cai no
aprendemos até aqui. sábado.
Se for passado “Segunda-feira” e 8, a função deve retornar “Terca-
1) Implemente a função que recebe 3 nomes e retorna esses nomes feira”, pois avançar 8 dias a partir da segunda-feira cai na terça-
em uma array. feira da semana seguinte.
2) Implemente função que recebe uma array e retorna a soma de 5) Implemente a função que recebe 3 números como parâmetros.
todos os seus números multiplicados por 2. Os dois primeiros delimitam um intervalo. A função deve retornar
um array contendo os menores números pares dentro do intervalo.
3) Implemente a função que recebe uma array de números positivos A quantidade de elementos nesse array deve ser igual ao 3o
diferentes entre si e retorna o índice do maior número encontrado. parâmetro passado
Obs: os dias devem ser retornados no seguinte formato Exemplo: se for passado os valores “2”, “10”, “3”, a função deve
retornar o array [4,6,8]
“Segunda-feira, Terca-feira, Quarta-feira, Quinta-feira, Sexta-feira,
Sabado, Domingo” Exemplo: se for passado os valores “2”, “10”, “2”, a função deve
retornar o array [4,6]
Se for passado “Segunda-feira” e 5: a função deve retornar