Linguagem JavaScript
Linguagem JavaScript
Linguagem JavaScript
Prof. Alexandre de Oliveira Paixão
Descrição
Propósito
Objetivos
Módulo 1
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 1/58
26/06/24, 15:15 Linguagem JavaScript
Aplicar as estruturas de decisão e de repetição.
Módulo 3
Vetores
Módulo 4
Ajax e JSON
meeting_room
Introdução
Segundo Flanagan (2011), JavaScript é a linguagem de
programação da Web mais utilizada pelos sites. Além disso,
todos os navegadores – estejam eles em desktops, jogos,
consoles, tablets ou smartphones – incluem interpretadores
JavaScript, fazendo dela a linguagem de programação mais
onipresente da história.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 2/58
26/06/24, 15:15 Linguagem JavaScript
Árvore DOM
O JavaScript é uma linguagem client side, ou seja, uma linguagem que
roda no lado do cliente, considerando o ambiente web. Nesse ambiente,
além do JavaScript, temos ainda duas outras principais tecnologias: a
linguagem de marcação HTML e o CSS. No vídeo a seguir, você
aprenderá a utilizar o JavaScript para interagir com páginas HTML por
meio da árvore DOM.
JavaScript
Esta linguagem faz parte da tríade de tecnologias que compõem o
ambiente web. Veja a seguir:
code
HTML
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 3/58
26/06/24, 15:15 CSS Linguagem JavaScript
touch_app
JavaScript
Cuida do comportamento e da interatividade das páginas web.
Interface DOM
Iniciaremos nosso estudo de JavaScript entendendo o que é e como
manipular a interface, ou árvore, DOM. Isso auxiliará o entendimento de
como essa linguagem se integra e interage com a HTML.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 4/58
Neste conteúdo, ficaremos restritos à manipulação do DOM por meio do
JavaScript.
26/06/24, 15:15 Linguagem JavaScript
Árvore DOM.
Atividade 1
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 5/58
assinale a afirmativa correta.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 6/58
26/06/24, 15:15 A linguagem JavaScript oferece uma Linguagem
série de recursos, além de possuir
JavaScript
uma sintaxe própria de utilização. Veremos, no vídeo a seguir, alguns
desses recursos e como fazer para incorporar código JS em páginas
HTML.
Sintaxe JavaScript
Observe o código a seguir:
Javascript
content_copy
Uma linha
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 7/58
Utilizamos “/*” e “*/”.
26/06/24, 15:15 Linguagem JavaScript
Variáveis
Vamos declarar as variáveis utilizando a palavra reservada “var”,
sucedida por seu nome. Não devem ser utilizados caracteres especiais
como nomes de variáveis.
Dica
Embora existam diferentes convenções, procure utilizar um padrão e
segui-lo ao longo de todo o seu código para a nomeação das variáveis,
sobretudo as compostas.
Atribuição
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 8/58
26/06/24, 15:15 Linguagem JavaScript
A respeito da atribuição de valores, embora declarados
da mesma maneira, os tipos de dados são atribuídos
de formas distintas.
Javascript
content_copy
Ponto e vírgula
Repare o final de cada linha de código – todas as linhas foram
terminadas com a utilização de um ponto e vírgula.
Recomendação
Diferentemente de outras linguagens, em JavaScript, não é obrigatória a
utilização de caracteres para indicar o final de uma linha de código.
Porém, seguindo uma linha de boas práticas, adote uma convenção e a
utilize em todo o seu código.
Outros elementos
Ao longo do código apresentado anteriormente, foram utilizados outros
elementos. Na tabela a seguir, cada um deles será descrito:
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 9/58
innerHTML tanto a inclusão quanto a exclusão e
26/06/24, 15:15 Linguagem JavaScript
a modificação do conteúdo do
elemento.
Arquivos externos
Mediante arquivos externos, com extensão .js, linkados ao documento
também dentro da seção <head>.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 10/58
necessários à correta visualização ou aos comportamentos da página,
26/06/24, 15:15 já que os códigos movidos para o final só serão lidos
Linguagem e interpretados
JavaScript
após todo o restante da página.
Atividade 2
A respeito dos tipos e da utilização de variáveis em JavaScript, analise
as afirmativas a seguir:
A Somente II.
B I e III.
C II e III.
D Somente I.
E I e II.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 11/58
26/06/24, 15:15 Na aprendizagem de qualquer linguagem de programação,
Linguagem JavaScriptos exercícios
práticos são fundamentais para a fixação do conteúdo e o entendimento
de suas particularidades, de sua sintaxe e de seus demais recursos.
Então, vamos praticar? Para isso, assista ao vídeo a seguir.
Roteiro de prática
Nesta prática, utilizaremos como ponto de partida o código visto na
seção Sintaxe JavaScript. A partir dele:
Por fim, caso queira ir além, crie uma calculadora para realizar as quatro
operações matemáticas. Nesse caso, você precisará pedir ao usuário
que escolha a operação a ser realizada, além dos números de entrada.
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 12/58
26/06/24, 15:15 Linguagem JavaScript
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 13/58
Salve a alteração.
26/06/24, 15:15 Linguagem JavaScript
Carregue novamente sua página.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 14/58
26/06/24, 15:15 Linguagem JavaScript
Estruturas condicionais
Neste vídeo, você vai compreender as estruturas condicionais do
JavaScript, entre elas as instruções if, else, else if e switch. Confira!
Aprofundando o conceito
Para melhor assimilação do conceito de estruturas condicionais, vamos
usar um exemplo a partir do código construído anteriormente, como
veremos a seguir:
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 15/58
26/06/24, 15:15 Linguagem JavaScript
help
Resposta
Para essa função, podemos utilizar uma
condição, ou seja, se o usuário inserir um
número inteiro não positivo, deve-se avisar
que o número não é válido, solicitando que
seja inserido um número válido.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 16/58
26/06/24, 15:15 Linguagem JavaScript
Instrução “If”
A sintaxe da instrução "if/else" em JavaScript possui algumas formas. A
primeira e mais simples é apresentada do seguinte modo:
if (condição) instrução
Nessa forma, é verificada uma única condição. Caso seja verdadeira, a
instrução será executada. Do contrário, não. Antes de continuarmos,
cabe destacar os elementos da instrução:
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 17/58
26/06/24, 15:15 Linguagem JavaScript
Outro detalhe importante: caso exista mais de uma instrução para ser
executada, é necessário envolvê-las em chaves. Veja o exemplo:
Javascript
content_copy
Javascript
content_copy
Repare que, nesse código, os caracteres “&&” foram substituídos por “||”.
Esses últimos são utilizados quando uma ou outra condição precisa ser
verdadeira para que as instruções condicionais sejam executadas.
Nesse caso, podemos fazer isso tanto para a forma em que todas as
condições precisam ser verdadeiras, separadas por “&&”, quanto para a
forma em que apenas uma deve ser verdadeira, separadas por “||”. Além
disso, é possível combinar os dois casos na mesma verificação. Veja o
exemplo:
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 18/58
26/06/24, 15:15 Linguagem JavaScript
Veremos a seguir:
Javascript
content_copy
Vamos praticar?
Nos três emuladores de código a seguir, apresentamos as estruturas de
decisão vistas até o momento. No primeiro emulador, temos o uso da
estrutura de decisão “if” de maneira simples, contendo apenas uma
única condição:
Exercício 1
info_outlineTUTORIAL
d content_copyCOPIAR
Javascript
null
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 19/58
26/06/24, 15:15 Linguagem JavaScript
play_arrow
Exercício 1
info_outlineTUTORIAL
d content_copyCOPIAR
Javascript
null
null
play_arrow
Exercício 1
info_outlineTUTORIAL
d content_copyCOPIAR
Javascript
null
null
play_arrow
Instrução “else”
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 20/58
Vejamos:
26/06/24, 15:15 Linguagem JavaScript
Javascript
content_copy
Português-estruturado
Linguagem de programação ou pseudocódigo que utiliza comandos
expressos em português.
Javascript
content_copy
Recomendação
Otimize os códigos presentes nos emuladores anteriores usando o “else
if”. Como exemplo, apresentamos o código do primeiro emulador
modificado, no qual as quatro estruturas de decisão com “if” foram
transformadas em uma única estrutura de decisão.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 21/58
mais com o uso de uma estrutura de decisão composta de if e else if ,
pois, quando a primeira condição verdadeira for encontrada (“a é maior
26/06/24, 15:15 Linguagem JavaScript
que b”), nenhuma das outras condições será avaliada. Logo, teremos:
Javascript
content_copy
>
Instrução “switch”
A instrução “switch” é bastante útil quando uma série de condições
precisa ser verificada. É bastante similar à instrução “else if”. Vejamos:
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 22/58
26/06/24, 15:15 Linguagem JavaScript
Atividade 1
Quanto às estruturas de decisão, mais precisamente a instrução
“switch”, analise as afirmativas a seguir:
A Somente II.
B I e III.
C II e III.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 23/58
26/06/24, 15:15 Linguagem JavaScript
Parabéns! A alternativa C está correta.
Roteiro de prática
Para realização da prática proposta, siga estes passos:
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 24/58
segunda variável é um número positivo .
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 25/58
seu valor com aspas (duplas ou simples). Além disso, para verificar
26/06/24, 15:15 duas condições em uma instrução condicional,
Linguagemdevemos utilizar o
JavaScript
operador &&. Por fim, utilizamos três sinais de igual (===) quando
desejamos comparar tanto o valor quanto o tipo de dado da variável.
Estruturas de repetição
Neste vídeo, você vai conhecer as estruturas de repetição do JavaScript:
for, while, do/while e for/in.
for
No emulador de código a seguir, podemos ver a sintaxe do laço “for”:
uma das estruturas de repetição presentes no JavaScript.
Observe:
Exercício 1
info_outlineTUTORIAL
d content_copyCOPIAR
Javascript
null
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 26/58
26/06/24, 15:15 Linguagem JavaScript
play_arrow
while
Veja o fragmento a seguir para entender o comportamento do laço
“while” (enquanto):
Exercício 2
info_outlineTUTORIAL
d content_copyCOPIAR
Javascript
null
null
play_arrow
do/while
Embora semelhante ao laço “while”, há uma diferença fundamental entre
ambos. Observe:
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 27/58
final. início.
26/06/24, 15:15 Linguagem JavaScript
Com isso, pelo menos uma vez, a instrução (ou as instruções) do laço
“do/while” será, obrigatoriamente, executada. Veja o exemplo:
Exercício 3
info_outlineTUTORIAL
d content_copyCOPIAR
Javascript
null
null
play_arrow
for/in
Assim como os demais laços em uma linguagem de programação, o
“for/in” é bastante utilizado com arrays (vetor ou matriz contendo dados
não ordenados).
Exercício 4
info_outlineTUTORIAL
d content_copyCOPIAR
Javascript
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 28/58
26/06/24, 15:15 Linguagem JavaScript
null
null
play_arrow
“for” “for/in”
Atividade 2
Observe o fragmento de código a seguir:
var cont = 1;
do{
cont += 1;
}while (cont < 10);
alert(cont);
A 10
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 29/58
26/06/24, 15:15 Linguagem JavaScript
D 11
E 2
Roteiro de prática
Para realizar a prática proposta, siga estes passos:
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 30/58
26/06/24, 15:15 Linguagem JavaScript
var contador = 0;
while (contador <= 3) {
console.log("O valor do contador é: " + contador);
contador++
}
A “O valor do contador é: 3”
C “O valor do contador é: 4”
E “O valor do contador é: 2”
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 31/58
"O valor do contador é: 1"
26/06/24, 15:15 "O valor do contador é: 2" Linguagem JavaScript
"O valor do contador é: 3"
3 - Vetores
Ao final deste módulo, você deverá identificar o conceito de vetor e sua utilização em
JavaScript.
Em linhas gerais:
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 32/58
26/06/24, 15:15 Matriz Linguagem JavaScript
Exemplo
Imagine que seja necessário armazenar as notas de 50 alunos para, ao
final, calcular as respectivas médias. Embora possa parecer sem
importância o uso de arrays nesse caso, seriam necessárias 50
variáveis (ou apenas 1 array).
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 33/58
Comentário
26/06/24, 15:15 Em JS, um vetor pode ter, no máximo,Linguagem
4.294.967.295 elementos. Outra
JavaScript
característica importante é que, em JavaScript, os arrays possuem
tamanho dinâmico, ou seja, não é necessário informar o tamanho do
vetor ao declará-lo.
Javascript
content_copy
Javascript
content_copy
Atividade 1
Em relação aos conceitos e ao uso de vetores em JavaScript, analise as
afirmativas a seguir:
A Somente II.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 34/58
C II e III.
26/06/24, 15:15 Linguagem JavaScript
D Somente I.
E I e II.
Manipulação de vetores
Neste vídeo, você vai aprender a acessar, exibir e remover elementos do
vetor no JavaScript, além de conhecer a propriedade lenght.
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 35/58
utilizaríamos o índice 2.
push
Para compreender em que situações o método push pode ser útil,
vamos voltar a nosso vetor “alunos”. Imagine que, após ter sido
declarado inicialmente com 3 valores, seja necessário incluir novos
valores a esse array, em tempo de execução. O método push nos auxilia
nessa tarefa. Sua sintaxe é:
nome_do_array.push(valor)
Javascript
content_copy
Javascript
content_copy
Tamanho do array
Há outras maneiras de adicionar elementos a um array de forma
dinâmica. A primeira delas pode ser vista a seguir:
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 36/58
26/06/24, 15:15 Linguagem JavaScript
Nesse caso, devemos utilizar o tamanho do array para informar que
desejamos adicionar um novo elemento. Isso pode ser feito informando
o número, caso o saibamos, ou de forma dinâmica, usando a
propriedade length − que retorna justamente o tamanho do array. Vamos
entender melhor essa importante propriedade!
Propriedade length
Uma das necessidades mais comuns quando se trabalha com arrays é
saber o seu tamanho. Como vimos em alguns de nossos exemplos, em
JavaScript, está disponível a propriedade length, que retorna o tamanho
ou número de elementos de um array. Sua sintaxe é:
nome_do_array.length
splice
É um método multiuso em JavaScript que serve tanto para excluir
elementos de um array, como veremos a seguir, quanto para substituir e
inserir. Sua sintaxe é:
Array.splice(posição,0,novo_elemento,novo_elemento,...)
Em que:
code ‘posição’
code ‘0’
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 37/58
26/06/24, 15:15 Linguagem JavaScript
Vejamos um exemplo:
Javascript
content_copy
Javascript
content_copy
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 38/58
26/06/24, 15:15 Linguagem JavaScript
Esse método possui uma particularidade: embora o valor seja excluído
do array, este não é “reorganizado”, permanecendo com o mesmo
tamanho.
pop
Este método, que não recebe parâmetros, remove um elemento do final
do array, atualizando seu tamanho. Sua sintaxe é:
frutas.pop();
shift
Embora seja similar ao pop, este método remove um elemento do início
do array. Após a remoção, este é reindexado, ou seja, o elemento de
índice 1 passa a ser o de índice 0, e assim sucessivamente. Além disso,
o tamanho do array também é atualizado. Sua sintaxe é:
frutas.shift();
Javascript
content_copy
Exercício 1
info_outlineTUTORIAL
d content_copyCOPIAR
Javascript
null
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 39/58
26/06/24, 15:15 Linguagem JavaScript
play_arrow
Comentário
O método filter utiliza uma sintaxe mais complexa, assim como
conceitos e funções de call-back que fogem ao escopo deste conteúdo.
Atividade 2
Deseja-se excluir o último elemento do array a seguir:
I. pares.splice(5,1);
II. pares.splice(6,0,0);
III. delete(pares[5]);
A Somente II.
B I e III.
C II e III.
D Somente I.
E I e II.
O método splice pode ser utilizado tanto para remover quanto para
adicionar ou substituir elementos de um array. Quando usado para
remover, sua sintaxe corresponde ao código pares.splice(5,1), em que
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 40/58
26/06/24, 15:15 Linguagem JavaScript
Vetores na prática
Neste vídeo, vamos realizar algumas atividades práticas para fixar todos
os conceitos vistos sobre vetores em JavaScript.
Roteiro de prática
Para criar e manipular os dados de um vetor em JavaScript, siga estes
passos:
Recomendação
Neste exercício, você pode utilizar funções JavaScript para organizar
melhor seu código. Inclusive, pode usar um pouco de recursividade.
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 41/58
26/06/24, 15:15 Linguagem JavaScript
Javascript
content_copy
Salve a alteração.
arr = [5,9,15]
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 42/58
B arr.indexOf(1)
26/06/24, 15:15 Linguagem JavaScript
C arr[2]
D arr[1]
E arr[arr.length-3]
O acesso a um elemento do array pode ser feito por meio de seu índice.
Considerando que esse índice se inicia em 0, para acessarmos o
segundo elemento, deveremos utilizar o índice 1.
4 - Ajax e JSON
Ao final deste módulo, você será capaz de reconhecer os recursos assíncronos Ajax e JSON.
Requisições assíncronas em
JavaScript
Neste vídeo, você vai compreender as requisições assíncronas na
linguagem de programação JavaScript.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 43/58
26/06/24, 15:15 Linguagem JavaScript
O conceito de requisição no ambiente web diz respeito às informações
solicitadas ou submetidas no lado cliente − por meio do navegador, por
exemplo − e tratadas pelo lado servidor, que, após processar a
requisição, devolverá uma resposta ao solicitante. Ainda no contexto do
ambiente web, há dois tipos de requisições: síncronas e assíncronas.
Síncronas expand_more
Assíncronas expand_more
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 44/58
26/06/24, 15:15 Linguagem JavaScript
AJAX
Em JavaScript, quando tratamos de requisições assíncronas,
naturalmente, falamos de AJAX (Asynchronous JavaScript and XML).
Esse termo foi empregado pela primeira vez em 2005 e engloba o uso
não de uma, mas de várias tecnologias: HTML (ou XHTML), CSS,
JavaScript, DOM, XML (e XSLT), além do elemento mais importante, o
objeto XMLHttpRequest.
Resumindo
HTML;
Arquivos de texto;
JSON.
Objeto XMLHttpRequest;
XMLHttpRequest
Inicialmente, foi implementado no navegador Internet Explorer por meio
de um objeto do tipo ActiveX. Posteriormente, outros fabricantes
fizeram suas implementações, dando origem ao XMLHttpRequest, que
se tornou o padrão atual.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 45/58
26/06/24, 15:15
O XMLHttpRequest possui alguns métodos e algumas propriedades.
Linguagem JavaScript
Veja um exemplo simples de sua utilização:
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 46/58
ainda está sendo processada. Logo, poderíamos, por exemplo,
exibir em nossa tela uma mensagem (ou imagem, como é muito
26/06/24, 15:15 Linguagem JavaScript
comum) avisando que a informação requisitada está sendo
carregada. Perceba que, dependendo do tempo de resposta do
servidor remoto, nem sempre será possível ver essa informação.
Ainda na linha 30, repare que também foi utilizado outro método: o
parse. Esse método não pertence ao objeto XMLHttpRequest, mas
é necessário quando o recurso requisitado devolve o conteúdo em
formato JSON.
Saiba mais
API Fetch
Esta API é, em termos conceituais, similar a XMLHttpRequest – ou seja,
permite a realização de requisições assíncronas a scripts do lado
servidor. Entretanto, por ser uma implementação mais recente, essa
interface JavaScript apresenta algumas vantagens, como:
looks_one
O uso de promise.
looks_two
O uso em outras tecnologias, como service workers, por exemplo.
Promise
Significa promessa. É um objeto utilizado para processamento assíncrono,
representando um valor que pode estar disponível agora, no futuro ou
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 47/58
Scripts executados em segundo plano no navegador, separados da página
26/06/24, 15:15 web. Linguagem JavaScript
Javascript
content_copy
Tipo de dado retornado pela requisição – veja a linha 24, onde foi
utilizado o objeto correspondente ao tipo de dado retornado pela
requisição – nesse caso, JSON. Há outros tipos de objetos, como
texto e até mesmo bytes, sendo possível, por exemplo, carregar
imagens, arquivos pdf, entre outros.
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 48/58
sucedida ou não.
<
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 49/58
4. Os valores do array são englobados por colchetes;
26/06/24, 15:15 Linguagem JavaScript
5. Array.
Saiba mais
Atividade 1
Sobre as requisições assíncronas em JavaScript − AJAX, analise as
afirmativas a seguir:
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 50/58
enquanto se aguarda o retorno da requisição.
26/06/24, 15:15 III. Requisições assíncronas não apresentam problemas
Linguagem de
JavaScript
congelamento do fluxo da aplicação e de desempenho.
A Somente II.
B I e III.
C II e III.
D Somente I.
E I e II.
AJAX na prática
Chegou a hora de praticarmos tudo o que vimos até aqui. Neste vídeo,
você vai aprender a implementar uma requisição assíncrona utilizando
AJAX.
Roteiro de prática
Para validar os conceitos sobre requisições assíncronas em JavaScript
(AJAX), crie uma página HTML e os códigos JavaScript, conforme
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 51/58
seguir, cujo título deverá ser “Clique para carregar imagens
Dica
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 52/58
26/06/24, 15:15 Observe o código a seguir e repare que há um fragmento
Linguagem incompleto: a
JavaScript
linha “if ( ???? )”.
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 53/58
a requisição foi executada com sucesso são: this.readyState == 4 &&
26/06/24, 15:15 this.status == 200. Esses objetos podem ser usados
Linguagem em conjunto ou
JavaScript
isoladamente, mas devemos dar preferência à primeira opção.
JSON na prática
Após termos visto alguns conceitos e a estrutura de um documento no
formato JSON, vamos manipular uma string em tal formato, utilizando
JavaScript e o método fetch. Neste vídeo, você aprenderá a implementar
uma requisição assíncrona utilizando JSON.
Roteiro de prática
Uma das formas mais comuns de manipularmos strings no formato
JSON é coletarmos esse dado por meio de requisições a APIs REST. Na
prática proposta, utilizamos uma API free, que possui dados fake,
conforme estes passos:
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 54/58
26/06/24, 15:15 Linguagem JavaScript
Javascript
content_copy
O segundo arquivo, uma página html, deve ser criado na mesma pasta
em que salvou o primeiro, contendo o seguinte código:
Javascript
content_copy
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 55/58
26/06/24, 15:15 Linguagem JavaScript
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 56/58
arquivo .json a partir de código JavaScript, em uma página HTML, é
26/06/24, 15:15 necessário que ambos estejam hospedados em um
Linguagem servidor web.
JavaScript
Explore +
Para saber mais sobre DOM, leia o Modelo de Objeto de Documento
(DOM) e Examples of Web and XML development using the DOM,
da comunidade Mozilla.
Referências
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 57/58
RAUSCHMAYER, A. Speaking Javascript. [s.l.]: O’Reilly Media, 2014.
26/06/24, 15:15 Linguagem JavaScript
Download material
Relatar problema
https://stecine.azureedge.net/repositorio/00212ti/00385/index.html?brand=estacio# 58/58