Olá, meu nome é Fábio, seja bem vindo! Esse é o meu primeiro artigo da vida e nele explicarei de forma introdutória o que é JavaScript e suas principais características.

JavaScript é uma linguagem de programação (LP) criada por Brendan Eich em 1995. Inicialmente ela se chamaria LiveScript e funcionaria no Netscape Navigator com o intuito de oferecer formas de tornar as páginas web mais dinâmicas e agradáveis. No final do mesmo ano foi batizada de Javascript, no ano seguinte foi incorporada pelo navegador da Microsoft e assim ficou mais conhecida. 

O padrão JavaScript é ECMAScript. Desde 2012, todos os navegadores modernos possuem suporte total ao ECMAScript 5.1. Navegadores mais antigos suportam pelo menos ECMAScript 3. Em 17 de Junho de 2015, a ECMA International publicou a sexta versão do ECMAScript, que é oficialmente chamado de ECMAScript 2015, e foi inicialmente conhecido como ECMAScript 6 ou ES6. Desde então, as especificações do ECMAScript são lançadas anualmente. Essa documentação faz referência à última versão de referência, que atualmente é a ECMAScript 2018.

As suas principais características são ser uma linguagem de programação interpretada e ter tipagem de dados dinâmica e fraca. E o que isso significa?

  • Linguagem de Programação Interpretada: O código escrito em JS não gerará outro tipo de arquivo de forma estática para sua execução. Será lido de cima pra baixo e transformado de forma dinâmica em tempo de execução.
  • Tipagem de Dados Dinâmica e Fraca: Todos os dados salvos em variáveis tem um tipo específico (numéricos inteiros, numéricos com casas decimais, texto, dicionários, listas, etc.) e isso é a tipagem em si. Ela ser dinâmica indica que uma variável pode ter seu tipo trocados de acordo com o valor atribuído em tempo de execução sem grandes complicações. Ser fraca diz respeito a conversões entre tipos de dados automaticamente.

Seu ambiente de uso pode ser dividido em dois grupos, são eles APIs de navegadores e APIs de terceiros.

  • APIs de navegadores: Permite interagir e coletar informações do ambiente do computador (salvar informações em sessão, salvar informações em variáveis, alterar HTML e CSS, coletar informações da localização geográfica, fazer upload de arquivos, entre outros).
  • APIs de terceiros: Não estão disponíveis no navegador automaticamente, mas podem ser acessadas através de requisições para se utilizar seus serviços – quando construímos uma API ela também leva essa mesma denominação.

* Não necessariamente é um servidor rodando JS, se for, usará o ambiente NodeJS 

Tipos básicos de dados

Os tipos básicos são String, Number, Object, Array e Boolean. Como já foi dito, uma única variável pode receber qualquer um desses tipos ao longo da execução do script, por isso se faz necessário saber como fazer as validações, mas isso é conversa para outro artigo.

Referências:

O que é JS: https://canaltech.com.br/internet/O-que-e-e-como-funciona-a-linguagem-JavaScript/

LP Interpretada x Compilada: https://henriquebastos.net/diferencas-entre-linguagem-compilada-e-linguagem-interpretada/

Tipagem: https://www.treinaweb.com.br/blog/quais-as-diferencas-entre-tipagens-estatica-ou-dinamica-e-forte-ou-fraca/

Versões de JS: https://medium.com/jaguaribetech/javascript-evolu%C3%A7%C3%A3o-e-especifica%C3%A7%C3%B5es-bb3c218e15e1