Seidor
personas programando

05 de junho de 2024

10 dados que talvez você não sabia sobre Javascript

  • O nome real não é “Javascript”, mas sim ECMAScript. Costuma-se fazer referência a ECMAScript quando se fala da versão dessa linguagem, mas na verdade “Javascript” é uma marca registrada pela Sun Microsystems.
  • Nasceu em 1995 e foi criado em 10 dias pelo programador Brendan Eich. Ele criou o Javascript baseando-se em linguagens como: Java, Perl, Scheme, HyperTalk, Self e AWK.
  • Foi criado para interagir de forma ágil com os elementos do DOM e fazer animações, complementando as funcionalidades da linguagem Java.
  • “undefined” não é uma palavra reservada. Portanto, “undefined” pode ser definido e, embora “null” seja a ausência total de valor, no Javascript, “null” é um objeto.
  • A igualdade estrita “===” não existiu até 1999. Até então, não havia uma forma direta de diferenciar entre um número e uma string com o mesmo valor.
  • A tipagem estrita, com a qual agora podemos trabalhar no Typescript, ia ser implementada no ECMAScript 4.
  • NaN (not a number) apesar do que significam suas siglas, seu typeof é ‘Number’.
  • Javascript não seria o mesmo sem as dezenas de bibliotecas, novas implementações, linguagens derivadas, motores Javascript open source, formatos de intercâmbio de dados, etc. Entre eles, os mais destacados: HTML Dinâmico, XMLHttpRequest, React, Angular, Vue, JSON, AJAX, JQUERY, V8 e Node.js.
  • Como todas as outras linguagens de script, as matrizes e os objetos podem ser criados com uma breve sintaxe de atalho. Estes estruturam a base do formato de dados JSON.
  • Javascript é uma linguagem de programação de um único thread, o que significa que os acessos às diferentes origens serão sequenciais e não será possível processar todas as informações até que tenhamos recebido tudo. Isso provoca, então, que não se possam lançar em paralelo os acessos a diferentes origens para melhorar significativamente o desempenho. Nesses casos, costuma-se usar uma programação assíncrona para evitar bloquear o processo de execução até que a tarefa em questão tenha sido concluída.