[Música] fala Mestres beleza no vídeo de hoje nós vamos entender aqui o que que é o Jason e vamos também nesse módulo né o novo módulo que nós estamos iniciando a gente vai entender o que que é Jason e vai falar um pouco também sobre Strings tá aqui no JavaScript então para iniciar né agora que nós falamos de objetos a gente sabe o que que é um objeto o Jason nada mais é o significado de json né que é JavaScript Object notation então é uma notação é uma forma de descrever um objeto só que em
um formato diferente tá E por que que foi criado Isso é uma vez que nós temos aí o objeto representado no JavaScript a gente precisa ter uma certa comunicação Então imagina aí num servidor né num ambiente de servidor num ambiente de apis e e clientes né o servidor e o cliente precisa ficar sempre conversando e a melhor forma de enviar um objeto né de um de um de um servidor para um navegador para um browser para um celular e foi feito é feito através de Jason né então o Jason foi criado para resolver esse problema
e que no final a gente consegue pegar um objeto JavaScript e transformar ele em uma string né um texto e enviar esse texto para outro dispositivo esse outro dispositivo pega essa string interpreta ela e Transform forma de volta em um objeto tá então é isso que nós vamos ver nessa aula aqui tá então eh eu criei aqui né o novo módulo o novo arquivo para exemplo dessa aula mas para iniciar aqui eu vou criar um novo arquivo aqui esse arquivo ele vai ser temporário né então eu vou chamar aqui de temp P Jason tá eu
eu vou usar aqui a extensão Jason que pra gente criar esse objeto aqui e ver como é tá então no Jason né quando a gente vai criar aqui no arquivo Jason nós temos que seguir algumas regras tá e a primeira delas é referente a aspas então tanto as propriedades quanto os valores a gente coloca sempre e as aspas em volta então aqui por exemplo eu vou ter o nome dessa da pessoa né então o nome O valor vai ser o no caso aí João né A idade idade no caso da idade né no caso de
números eu não preciso da aspa Tá mas eh a maioria das vezes quando a gente tá trabalhando com Jason a gente vai tá usando aspas aí principalmente nas Chaves né então todas as chaves terão aí aspas né então nome idade eh por exemplo cidade né cidade é tal cidade eh e aqui nós podemos ter eh propriedades mais complexas né então eu posso ter no Jason eu posso ter no caso que eu tô criando um objeto né dentro do objeto eu posso ter a Reis e posso ter objetos também então os tipos de dados eles são
mais reduzidos do que no JavaScript então no json eu tenho objeto tenho Array tenho Strings vou ter também nulo boleano e numérico tá então basicamente isso deixa eu anotar aqui aqui eu não vou conseguir anotar vou anotar aqui nesse outro cara então e no no Jason né como não tem como no arquivo eu não consigo comentar as coisas né por isso que eu tô fazendo aqui no arquivo JS e eu vou fazer o seguinte vou criar aqui o bloco de comentário né pra gente falar aqui no Jason temos os seguintes tipos de dados então nós
teremos aí eh string números numbers né temos objetos OB vou deixar em inglês né a Reis e tem os nulos né que é o que aponta aí pro para algo que não existe e temos também o bulen que é o boleano tá então eu nesse meu arquivo Jon aqui eu posso ter esses tipos de dados então se eu tivesse a profissão ou melhor a CNH né né CNH que vai ser o boleano né que eu posso colocar aqui true e aqui eu teria né Por exemplo os apelidos vc até me ajuda né sugerir nas aspas
apelido pode ser uma arrei e os pets né os pets Pode ser aí uma lista de objetos né então aqui dentro de objetos eu teria o nome do PET enfim eu conseguiria criar aí esse meu objeto usando Jason tá então a anotação do Jason é essa eh é muito parecido com o JavaScript até porque né É É anotação de JavaScript só com esses detalhes aqui das aspas e os tipos de dados um pouco reduzidos tá então se eu tenho aqui um objeto que representa uma pessoa e eu vou copiar aqui ó no meu exemplo que
eu tenho um objeto que é esse cara aqui que tá com objeto Jason Mas vai ser pessoa né Então essa pessoa ela é um objeto JavaScript e agora eu vou converter esse objeto JavaScript para um uma string Jason né E aqui nós temos os métodos então eu vou ter aqui ó o let né Vamos criar aqui com Let nós estamos vamos usar const aqui né já aqui ã nós estamos usando sempre LED essa const aqui é até interessante a gente usar o const aqui para mim explicar para vocês um pouco sobre um pouco mais sobre
objetos então aqui na nessa const eu vou criar ã a string né então Jason vou dar o nome disso aqui de Jason string e isso aqui vai eu vou atribuir nessa variável o resultado do Jason e Jon que a gente vai escrever em maiúsculo né porque é um objeto global e dentro desse objeto Global Jon nós temos o método string F tá então é basicamente para transformar um objeto JavaScript em uma string Jon então aqui eu passo o objeto pessoa e aqui eu vou fazer um console log json string se a gente executa isso aqui
nós temos aqui ó uma string que representa aquele objeto né que foi convertido Então as as chaves né Nós temos aqui Strings e os valores também foram convertidos respectivamente respectivamente e como os tipos de dados são reduzidos existem coisas que a gente não consegue converter e de objeto para Jason por exemplo métodos né então se eu tivesse aqui o método andar andar né vai ser uma função anônima que não faz nada só uma função se eu executo isso aqui a gente vai ter a conversão né o Jason string file ele consegue fazer a conversão pra
gente eh não vai dar erro só que não vai ter ele vai simplesmente ignorar né comandar é uma função Ele simplesmente ignora a gente não vai conseguir converter esses tipos mais complexos né somente os tipos que foram listados aqui se as propriedades são Strings números ob e dentro desses objetos e dentro desses arrs a gente só pode ter e também os mesmos tipos de dados números Strings outros objetos outros Aris bolean e nulos a gente só pode ter no Jon esse tipo aqui de coisa qualquer coisa diferente disso que seria por exemplo undef ou uma
função ou né a gente não vai conseguir tá fazer a conversão então dito isso né transformar um objeto em uma string Jason e eu consigo fazer o contrário Então aqui ó eu vou criar outra constante que vai ser o objeto objeto Jason objeto Jason Pode ser que vai receber que eu vou atribuir nele né o Jason P pass aqui ó tem o método pass esse pass eu vou passar a string Jason que eu recebi então aqui ó que na verdade é que eu nesse caso aqui foi a que eu acabei de converter mas em um
exemplo em um exemplo real a gente teria a gente receberia no caso aí de comunicação entre cliente e servidor eu receberia do Servidor a string converteria em objeto ou eu enviaria a string o servidor recebe converte objeto e isso é feito até é feito até automaticamente por a maioria dos que nós temos aí de de comunicação né comunicação entre diferentes máquinas então a gente nem chega a fazer isso muito na mão sabe mas é bom saber porque uma hora ou outra a gente precisa est fazendo esse tipo de coisa tá então Jon pass vai fazer
a conversão de volta né então se eu fizer aqui o cons log do meu objeto Jon deixa eu salvo isso aqui e executo a gente vai ver que o primeiro log é a string Jon e o segundo log já é um objeto e para provar isso aqui a gente pode usar o Type off Type off J string e type off objeto Jason executando isso aqui a gente tem ó o primeiro é do tipo string e o segundo é do tipo objeto tá então ele consegue fazer essas conversões pra gente e para essa aula eu planejei
isso tá Relembrando esse tipo de conversão né de Jason para string de string para Jason é para ser usada em comunicações entre clientes e servidores ou diferentes dispositivos foi criado para isso né a gente pode usar para alguns outr outros fins como por exemplo armazenar configurações locais em um arquivo como esse arquivo Jason aqui ou fazer fazer essa conversão né do objeto em uma string para poder salvar em um um banco de dados dependendo do nosso banco de dados se isso fizer sentido a gente pode estar fazendo isso também e enfim né acho que esses
exemplos aqui tá bom a gente pode ter outros usos mas não vem ao caso tá o que eu quero fic deixar bem claro aqui é que o Jason é a forma de representar o objetos JavaScript em um outro formato né E esse outro formato ele pode ser enviado e recebido via eh rede né via comunicação aí entre diversos dispositivos ele ele pode como ele é transformado para uma string ele a gente pode tratar ele como uma string e enfim a gente vai por isso que a gente vai explorar mais sobre Strings aqui pra gente entender
um pouco mais Mas no geral Jason nos dá essa flexibilidade de converter um objeto para um formato um pouco mais simples e tratar ele da forma que nos interessa tá então para essa aula é isso eu espero que eu tenha ajudado qualquer dúvida pode estar deixando um comentário aí logo abaixo e é isso aí muito obrigado e até a próxima [Música]