| [ Web Proxy ] |
| Viewing: https://developer.mozilla.org/pt-BR/docs/Web/JavaScript/Guide/Introduction#javascript_and_java | [Back] [Original] |
Get to know MDN better
Esta pgina foi traduzida do ingls pela comunidade. Saiba mais e junte-se comunidade MDN Web Docs.
Este captulo apresenta o JavaScript e discute alguns de seus conceitos fundamentais.
Este guia assume que voc tem os seguintes conhecimentos bsicos:
A documentao de JavaScript na MDN inclui o seguinte:
Se voc novo em JavaScript, comece com os artigos na rea de aprendizado e com o Guia JavaScript. Quando voc j possuir uma compreenso dos princpios bsicos, voc pode usar a Referncia JavaScript para ter mais detalhes sobre objetos e declaraes.
JavaScript uma linguagem de script orientada a objetos e plataforma cruzada usada para tornar as pginas da Web interativas (por exemplo, com animaes complexas, botes clicveis, menus pop-up etc.). H tambm verses mais avanadas do lado do servidor do JavaScript, como Node.js, que permitem adicionar mais funcionalidades a um site do que baixar arquivos (como colaborao em tempo real entre vrios computadores). Dentro de um ambiente de host (por exemplo, um navegador da Web), o JavaScript pode ser conectado aos objetos de seu ambiente para fornecer controle programtico sobre eles.
JavaScript tem uma biblioteca padro de objetos, como: Array, Date, e Math, e um conjunto de elementos que formam o ncleo da linguagem, tais como: operadores, estruturas de controle e declaraes. O ncleo do JavaScript pode ser estendido para uma variedade de propsitos, complementando assim a linguagem:
Isso significa que, no navegador, o JavaScript pode alterar a aparncia da pgina da Web (DOM). E, da mesma forma, o JavaScript Node.js no servidor pode responder a solicitaes personalizadas enviadas por cdigo executado no navegador.
JavaScript e Java so similares em algumas coisas, mas so diferentes em outras. O JavaScript assemelha-se ao Java, porm no possui tipagem esttica e checagem rigda de tipos como o Java. JavaScript segue a sintaxe bsica do Java, convenes de nomenclatura e construes de controle de fluxo, razes pelas quais esta linguagem foi renomeada de LiveScript para JavaScript.
Em contraste com o sistema em tempo de compilao das classes construdas por declaraes no Java, JavaScript suporta um sistema em tempo de execuo com base em um pequeno nmero de tipos de dados representando valores numricos, booleanos, e strings. JavaScript tem um modelo de objeto baseado em prottipo em vez do modelo, mais comum, de objeto baseado em classes. O modelo baseado em prottipo fornece herana dinmica; isto , o que herdado pode variar para objetos individuais. JavaScript tambm suporta funes sem quaisquer requisitos especiais declarativos. As funes podem ser propriedades de objetos, executando como mtodos.
JavaScript uma linguagem mais livre em comparao a Java. Voc no tem de declarar todas as variveis, classes e mtodos. Voc no tem que se preocupar com o fato dos mtodos serem pblicos, privados ou protegidos, e voc no tem que implementar interfaces. Variveis, parmetros e tipo de retorno da funo no so explicitamente tipados.
Java uma linguagem de programao baseada em classes, projetada para execuo rpida e segurana de tipos. Segurana de tipo significa que, por exemplo, voc no pode converter um nmero inteiro em Java para uma referncia de objeto ou acessar a memria privada corrompendo bytecodes Java. O modelo baseado em classes do Java significa que os programas so exclusivamente constitudos por classes e seus mtodos. Herana de classe do Java e tipagem forte geralmente requerem hierarquias de objetos fortemente acoplados. Esses requisitos tornam a programao em Java mais complexa do que a programao em JavaScript.
Em contraste, JavaScript descende em esprito de uma linhagem de linguagens menores com tipagem dinmica, como HyperTalk e dBASE. Essas linguagens de script oferecem ferramentas de programao para um pblico muito mais amplo por causa de sua sintaxe mais fcil, funes especializadas embutidas e requisitos mnimos para a criao de objetos.
| JavaScript | Java |
|---|---|
| Orientada a objeto. Sem distino entre tipos e objetos. A herana feita atravs do prottipo e as propriedades e mtodos podem ser adicionadas a qualquer objeto dinamicamente. | Baseada em classes. Objetos so divididos em classes e instncias com toda a herana atravs da hierarquia da classe. Classes e instncias no podem ter propriedades ou mtodos adicionados dinamicamente. |
| Os tipos de dados das variveis no precisam ser declarados (tipagem dinmica, vagamente tipado) | Os tipos de dados das variveis devem ser declarados (tipagem esttica, fortemente tipado). |
| No pode escrever automaticamente no disco rigdo. | Pode escrever automaticamente no disco rigdo. |
O JavaScript padronizado pela Ecma International a associao Europeia para a padronizao de sistemas de comunicao e informao (antigamente ECMA era um acrnimo para European Computer Manufacturers Association) para entregar uma linguagem de programao padronizada, internacional baseada em JavaScript. Esta verso padronizada de JavaScript, chamada ECMAScript, comporta-se da mesma forma em todas as aplicaes que suportam o padro. As empresas podem usar a linguagem de padro aberto para desenvolver a sua implementao de JavaScript. O padro ECMAScript documentado na especificao ECMA-262.
O padro ECMA-262 tambm aprovado pela ISO (International Organization for Standardization) como ISO-16262. Voc tambm pode encontrar a especificao no site da Ecma International. A especificao ECMAScript no descreve o Document Object Model (DOM), que padronizado pelo World Wide Web Consortium (W3C) e/ou WHATWG (Web Hypertext Application Technology Working Group). O DOM define a maneira na qual os objetos do documento HTML esto expostos no seu script. Para ter uma ideia melhor sobre as diferentes tecnologias que so usadas durante a programao com JavaScript, consultar o artigo Viso Geral das tecnologias JavaScript.
A especificao ECMAScript um conjunto de requisitos para a implementao ECMAScript. til se voc desejar implementar recursos compatveis com os padres da linguagem em sua implementao ECMAScript ou engine (como SpiderMonkey no Firefox, ou v8 no Chrome).
O documento ECMAScript no se destina a ajudar programadores de script. Utilize a documentao JavaScript para obter informaes ao escrever scripts.
A especificao ECMAScript utiliza terminologia e sintaxe que podem ser desconhecidos para um programador JavaScript. Embora a descrio da linguagem possa ser diferente no ECMAScript, a linguagem em si continua sendo a mesma. JavaScript suporta todas as funcionalidades descritas na especificao ECMAScript.
A documentao JavaScript descreve aspectos da linguagem que so apropriadas para um programador JavaScript.
Para comear a aprender JavaScript fcil: Tudo o que voc precisa de um navegador web moderno. Verses recentes do Firefox, Chrome, Microsoft Edge, e Safari todas suportam os recursos discutidos neste guia.
Uma ferramenta muito til para explorar o JavaScript o JavaScript Console (s vezes chamado de Web Console, ou apenas o console): uma ferramenta que permite inserir JavaScript e execut-lo na pgina atual.
A captura de tela aqui mostra o Firefox Web Console, mas todos os navegadores modernos vm com um console que funciona de maneira semelhante.
As instrues exatas para abrir o console variam de um navegador para outro:
O console aparece na parte inferior da janela do navegador. Na parte inferior do console h uma linha de entrada que voc pode usar para inserir JavaScript, e a sada aparece no painel acima:
O console funciona exatamente da mesma forma que eval: a ltima expresso digitada retornada. Por uma questo de simplicidade, pode-se imaginar que toda vez que algo inserido no console, ele realmente cercado por console.log em torno de eval, assim:
console.log(eval("3 + 5"));
Por padro, se voc pressionar Enter aps inserir uma linha de cdigo, a string digitada ser executada. Para inserir entrada multilinha:
function foo() {), o console tratar Enter como uma quebra de linha e permitir que voc digite outra linha.Para comear a escrever JavaScript, abra o console, copie o seguinte cdigo e cole na linha de comando:
(function () {
"use strict";
/* nicio do seu cdigo */
function greetMe(seuNome) {
alert(`Ol ${seuNome}`);
}
greetMe("Mundo");
/* Fim do seu cdigo */
})();
Pressione Enter para v-lo abrir em seu navegador!
Nas pginas seguintes, este guia apresentar a sintaxe e os recursos da linguagem JavaScript, para que voc possa escrever aplicativos mais complexos.
Mas, por enquanto, lembre-se de sempre incluir (function(){"use strict"; antes de seu cdigo e adicionar })(); ao final de seu cdigo. Os artigos modo estrito e IIFE explicam o que eles fazem, mas por enquanto eles podem ser considerados em fazer o seguinte:
This page was last modified on 27 de abr. de 2025 by MDN contributors.
Your blueprint for a better internet.
Portions of this content are 19982026 by individual mozilla.org contributors. Content available under a Creative Commons license.
| Web Proxy Viewer | New URL | Original Page |