Galera, uma dúvida simples: Javascript é orientado objeto? Sabemos que existe os Prototype em Javascript que nos permite chegar perto do OO.
Acredito que não, para a linguagem ser orientada a objeto ela tem que atender a alguns requisitos, como classe, herança, polimorfismo e etc… ainda não vi nenhum autor famoso que fale se javaScript é orientado a objeto se achar posta aqui.
Nada a ver, é orientada a objetos sim. Através de vários objetos que se pode ter em uma página, pode-ser criar as ações (as famosas funções) através de vários eventos.Só pq JS não possui os conceitos citados que existem em Java, não que dizer que ela não é orientada a objetos.
Na verdade Javascript é uma linguagem com suporte a OO e não totalmente orientada a objeto.
Significa que você pode usar OO ou não, vai do seu gosto.
Na minha opinião JS sem OO não é nada.
Completado a resposta acima:
Não orientado a objeto:
if(confirm("Funcao"))
{
alert("oi")
} else {
alert("thau")
}
Orientado a Objeto:
function MyObject(attributeA, attributeB) {
this.attributeA = attributeA
this.attributeB = attributeB
}
// cria um Objeto chamado obj
obj = new MyObject('red', 1000);
// acessa um atributo do obj
alert(obj.attributeA);
// accessa um atributo com notação de array associativo
alert(obj["attributeA"]);
// adiciona um novo atributo
obj.attributeC = new Date();
// remove um atributo do obj
delete obj.attributeB;
// remove o Objeto inteiro
delete obj;
Sim JavaScript é orientado a objetos, apesar da grande maioria dos desenvolvedores Web ignorarem isto, escrevendo “scripts” toscos sem saber utilizar os recursos da linguagem.
A confusão se JavaScript é ou não é OO, ocorre porque JavaScript não é baseada em classes como o Java, C++, etc. Mas não ter classes não significa que não é orientada a objetos.
como já disseram, tem recursos pra OO, mas não é TOTALMENTE OO.
Precisa de alguns artifícios para fazer herança, por exemplo…
você pode ver mais sobre isso aqui: http://geekvigarista.com/dev/orientando-a-objetos-com-javascript-yes-we-can
É sim. Ex: a biblioteca EXTjs que é um framework JavaScript.
Sim JavaScript é orientado a objetos, apesar da grande maioria dos desenvolvedores Web ignorarem isto, escrevendo “scripts” toscos sem saber utilizar os recursos da linguagem.
A confusão se JavaScript é ou não é OO, ocorre porque JavaScript não é baseada em classes como o Java, C++, etc. Mas não ter classes não significa que não é orientada a objetos.
[/quote]
Concordo.
Ou a linguagem é orientada a objetos ou não é, e Javascript é sim uma linguagem OO.
Uma coisa é a linguagem ser orientada a objetos e outra é alguém programar utilizando OO, pois assim como podemos programar em Java usando OO podemos também programar em Java de forma procedural.
A principal diferença do Javascript com relação a outras linguagens é que Javascript usa protótipos e não classes.