# JavaScript/Introdução

Muito se fala sobre JavaScript, porém existe muito pouca documentação em português desta linguagem de programação.
É comum a confusão que se faz entre a linguagem Java e o JavaScript, embora sejam parecidas (são linguagens de propósito geral), são linguagens distintas, tem focos diferentes. Uma observação muito comum é notar que a linguagem Java é fortemente tipada, enquanto que JavaScript não.
A JavaScript é uma linguagem pequena, leve e portável (está disponível em vários navegadores e plataformas).

## História

Brendan Eich, criador da linguagem JavaScript. Hoje, desenvolvida com apoio de milhares de pessoas.
De "Mocha" para "LiveScript", de "LiveScript" para "JavaScript". Mas por quê?
Bem, em 1995 a empresa Sun Microsystems trouxera uma nova linguagem de programação denominada "Java". Esta linguagem se tornou popular rapidamente. Devido a esta popularidade a empresa Netscape (criadora da linguagem JavaScript, e do atual Mozilla firefox) decidiu nomear sua linguagem script para World Wide Web (teia mundial) para algo semelhante, Java + Script → JavaScript, tudo para que pudesse "aparecer na mídia". Isso porque as duas linguagens compartilhavam sintaxes semelhantes, embora a aplicação de recursos mais avançados (Orientação a Objetos) seja bem diferente entre estas duas linguagens.
A vontade de "acompanhar" a linguagem Java foi tão grande que em 1997 a Netscape decidiu criar um navegador inteiramente feito em Java, seu nome: Javagator. O projeto foi descontinuado, no entanto o que foi produzido acabou se tornando no interpretador feito em Java chamado rhino (tradução para rinoceronte).
Com o passar do tempo JavaScript se tornou um padrão desenvolvido pela ECMA (European Computer Manufactures Association) vide ECMA-262, também reconhecida pela ISO ISO-16262.
Embora haja um padrão, a implementação deste padrão não tem sido bem sucedida. Muitas empresas acabaram que criando seus próprios "padrões", e várias vezes os desenvolvedores tiveram que contornar estes problemas através dos chamados hacks.

## Portabilidade e usos

Embora o JavaScript tenha sido uma linguagem focada na World Wide Web, principalmente para tornar as páginas dinâmicas (DHTML), ela não se limita a este ambiente. JavaScript pode ser usado em diversos softwares como linguagem de script, assim como Lua é a linguagem de script em diversos softwares (por exemplo, no software MediaWiki, o software usado para disponibilizar todo conteúdo da Wikipédia, Wikilivros, etc.).
As implementações abaixo não dependem de um navegador.
* Rhino — uma implementação da Mozilla Foundation de um interpretador de JavaScript feito em Java.
* Nashorn — uma implementação da Oracle de um interpretador de JavaScript também em Java.
* Node.js — uma plataforma para programação JavaScript através do motor V8 (JavaScript).
Para mais implementações veja a lista de motores que implementam o padrão ECMAScript.

## Suporte a JavaScript no navegador

Como este livro pretende se focar no uso mais comum dessa linguagem, o foco será no uso do JavaScript como linguagem de script para web (propósito original).
Para verificar se o JavaScript está habilitado no seu navegador (em inglês, browser), ou se ele suporta, copie e cole o código abaixo em uma arquivo HTML qualquer, e abra-o.
O resultado esperado é uma pequena janela com a mensagem "Olá!".
Caso não apareça nada, ou apareça um erro, verifique as configurações do seu navegador. Alguns navegadores deixam, por padrão, o JavaScript desabilitado, ou então nem mesmo suportam (implementam) a linguagem JavaScript.

## Referências

* 1 2 3 4 Wikipédia: https://pt.wikipedia.org/wiki/Javascript .
* ↑ Mozillazine: http://kb.mozillazine.org/JavaScript_is_not_Java .
* ↑ Wikipédia: https://en.wikipedia.org/wiki/Rhino_%28JavaScript_engine%29 .
* ↑ Wikipédia: https://en.wikipedia.org/wiki/Netscape_Communications_Corporation .