Exemplos de funções no Javascript Exemplos para declarar, criar um objeto chamado função e para executar funções internamente ao html atraves de subrotina. Tipos de manipulação: sem função, com função, mais de uma função, funções aninhadas dentro de outras funções. Exemplos para manipular funções externamente ao html.
Exemplos para modo de uso estrito e não estrito.
Exemplos de paradigmas orientado a objeto, procedural e funcional
Exemplos em ambiente: navegador web e window
1. Caracteristicas do Javascript

  1. O javascript não lida com classes e somente com objetos
  2. O codigo javascript acessa e utiliza os elementos do HTML e CSS como objetos com metodos e propriedades
  3. O DOM é uma plataforma de interface de linguagem neutra que permite que programas e scripts acessem e atualizaem dinamicamente o: conteudo, a estrutura e o estilo do documento.
  4. O javascript trabalha com 2 modos: estrito (strict) e não estrito
  5. Não é tipado ou seja sua tpagem é mutavel, dinamica (pode assumir varios tipos durante a execução) e implicita (as variaveis são declaradas sem tipo)
  6. É uma linguagem interpretada
  7. Usa os paradigmas orientado a objeto, procedural e funcional
  8. Sua união com o CSS é conhecida como DHTML. Os elementos de uma pagina HTML podem ser alterados pelo js.
  9. É versatil para ambientes em arvore como o HTML.
  10. Há 2 tipos de ambientes para o javascript: no proprio navegador web ou em uma janela chamada de window (frame, document, location e history)
  11. A partir do javascript foram criados os padrões ECMA, ECMA-262 (ECMAScript)
  12. Versão mais recente do javascript : 1.8
2. Exemplo 1 - Executando o js embutido na tag <html>  - Inline Solução:
Escrever um script em javascript para escrever olá em um documento html,
carregando primeiro a pagina e depois o javascript e escrevendo de 2 modos diferentes:
a- no proprio browse
b- em uma janela de alerta.


Código
em html e javascript:


<!-- versao 1 do pgm ola-->

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<title>pgm para escrever olá no documento html</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<body>
pgm para escrever olá no documento html: <br>

<script language="JavaScript">
       // avisa que a partir daqui vai usar script em javascript
/*a*/  document.write("olá ");          //  Escrever no documento html e mostrar no browse
/*b*/  alert ("ola");                            //   Mostrar a mensagem  atraves de uma janela de alerta do  browse

</script>

</body>

</html>

Obs.:
1. Copiar codigo acima para o endereço http://www.w3schools.com/js/tryit.asp?filename=tryjs_function2  e testar
2. O codigo após testado será salvo em biblioteca de paginas como ola.html
3. A função javascript pode estar embutido na tag <head> ou na tag <body>. Por uma questão de performace o melhor posicionamento é na tag <body>

Legenda:

vermelho --> codigo em html
azul         --> codigo em javascript
3. Exemplo 2 - Declarando e executando uma função embutida no html Solução:
Escrever um script em javascript para escrever olá em um documento html carregando primeiro a pagina e depois o javascript e escrevendo de 2 modos diferentes:
a- no proprio browse
b- em uma janela de alerta.

O codigo da função deverá ficar num arquivo externo do html. A invocação da função deverá ser feita embutida ao html.



Código
em html e javascript:


<!-- versao 2 do pgm ola-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<title>pgm para escrever olá no documento html</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<body>
pgm para escrever olá no documento html: <br>

<script language="JavaScript">
  // avisa que a partir daqui vai usar script em javascript

  function escreve( ) {
/*a*/  document.write("olá ");     //  Escreve olá no documento html e mostra no browse
/*b*/  alert ("ola");                      //  Escreve olá no documento html e mostra em uma janela do  browse
}

  escreve( );                                 // invoca a função escreve
</script>
4. Exemplo 3 Executando com uma função externa ao html, como arquivo .js Solução:
Escrever um script em javascript para escrever olá em um documento html carregando primeiro a pagina e depois o javascript e escrevendo de 2 modos diferentes:
a- no proprio browse
b- em uma janela de alerta.

O codigo da função deverá ficar num arquivo externo do html. A invocação da função deverá ser feita embutida ao htm

Código
em html e javascript:

<!-- versao 3 do pgm ola-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">

<head>
<title>pgm para escrever olá no documento html</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>

<body>
pgm para escrever olá no documento html: <br>


</head>

<body>
A data e hora corrente é:<br>

<script language="JavaScript" src="ola3.js >// posicionamento recomendado

escreve( );                                 // chama a função escreve que esta descrita em ola2.js


</script>

</body>

</html>

Obs.:
1.
5. Exemplo 4 Executando várias funções sequencialmente Solução:
Executar varias funcões sequencialmente e
e executar no browser e mostrar em uma pagina html. O codigo

Código
em html e javascript:


<html>

<head>
<title>pgm executa varias funções </title>

    <script language="JavaScript">  // abre script javascript

// FUNÇÃO 1 Mostra uma mensagem, sem document.write()
// Não retorna nenhum valor

function imprimir(msg)

{
    document.write(msg, "<br>");
}

// FUNÇÃO 2 Calcula e retorna a distancia entre 2 pontos

function distancia(x1, y1, x2, y2)

{
    var dx = x2 - x1;
    var dy = y2 - y1;
    return Math.sqrt(dx*dx + dy*dy);  // função nativa do javascript
}
 
// FUNÇÃO 3 Recursiva (chama ela mesmo) e retorna um valor
// Calcula fatorial de x ou seja é produto de x  e todos  inteiros positivos menores que ele. Ex 3! = 3 x 2 x 1.

function fatorial(x)

{
    if (x <= 1)
        return 1;
    return x * factorial(x-1);
}
6. Exemplo 5 Executando funções aninhadas dentro de outras Solução:
Executar varias funcões aninhadas dentro de outras
executar no browser e mostrar em uma pagina html.

Código
em html e javascript:


<html>

<head>
<title>pgm aninha varias funções </title>

    <script language="JavaScript">  // abre script javascript

// FUNÇÃO calcula a hipotenusa A soma dos quadrados dos catetos é igual ao quadrado da hipotenusa
// hipotenusa  = raiz quadrada (cateto (a)² + cateto (b)² )

function hipotenusa (a, b) {
  function square (x) {return x*x}
  return Math.sqrt(square(a) + square (b));  // Math - objeto intrinsico ao nucleo do js. sqrt - raiz quadrada
}
 
    </script>   <!...  fecha script  ....>

</head>

<body>

<script language="JavaScript">
 
// executa a função definidas no head
 
  document.write("hipotenusa = " + hipotenusa (2, 3) );

</script>

</body>

</html>


Obs 1.:
Copiar codigo acima para o endereço
7. Exemplo 6 - Executando sem função, incluindo direto no htmlSolução:
Obter  data e hora corrente interna do computador
e executar o javascript no browser e mostrar em uma pagina html.

Código
em html e javascript:


<!-- versao 2 do pgm ola-->
<html>

<head>
<title>pgm para imprimir data e hora corrente</title>


</head>

<body>
A data e hora corrente é:<br>

<script language="JavaScript">  // avisa que a partir daqui vai usar script em javascript

  var data = new Date();                  // Obter data and hora corrente
  document.write(data.toLocaleString());  //  Inserir no documento  no documento html e mostrar no browse

</script>

</body>

</html>

Obs.:
1. Copiar codigo acima para o endereço http://www.w3schools.com/js/tryit.asp?filename=tryjs_function2  e testar
2. O codigo após testado será salvo em biblioteca de paginas como ola1.html
Legenda:

vermelho --> codigo em html
azul         --> codigo em javascript
8. Exemplo 7 Executando construtor de função Solução:
Criar função sem nome para calcular a multiplicação entre 2 numeros.
E
xecutar no browser e mostrar em uma pagina html.


Código
em html e javascript:


<html>

<head>
<title>pgm constroe funções </title>


</head>

<body>

<script language="JavaScript">
 
// cria e executa uma função
 
  var f = new Function ("x", "y","return x * y;");
  document.write("f = " + f(2, 3) );

</script>

</body>

</html>


ou pode colocar o codigo dentro do head

<html>

<head>
<title>pgm constroe funções </title>

<script language="JavaScript">  // abre script javascript

var f = new Function ("x", "y","return x * y;");
</script>   <!...  fecha script  ....>

</head>

<body>

<script language="JavaScript">

  document.write("f = " + f(2, 3) );     
// executa a função

</script>

</body>

</html>

 

9. Exemplo 8 Executando literais de função
Solução:
Criar funções sem nome  e
executar no browser e mostrar em uma pagina html.

Código
em html e javascript:


<head>
<title>pgm constroe e usa funções literais </title>

</head>

<body>

<script language="JavaScript">
//  executa a função literal
  
var f = function fatorial(x) {if (x <= 1) return 1; else return x*fatorial(x-1);};
document.write("fatorial de 4 = " + f(4) ) ;

</script>

</body>

</html>

ou pode colocar o codigo dentro do head

<head>
<title>pgm constroe e usa funções literais </title>

<script language="JavaScript">  // abre script javascript

var f = function fatorial(x) {if (x <= 1) return 1; else return x*fatorial(x-1);};

</script>   <!...  fecha script js  ....>

</head>

<body>

<script language="JavaScript">

//  executa a função literal
  
document.write("fatorial de 4 = " + f(4) ) ;

</script>

</body>

</html>



Obs 1.:
Copiar codigo acima para o endereço http://www.w3schools.com/js/tryit.asp?filename=tryjs_function2  e testar

Obs 2:
Ela não cria uma função fatorial mas  permite que o corpo da função faça referencia a si proprio usando este nome.
10. Exemplo 9 Executando função como dado Solução:
Passar funções como argumentos para outras funções
.

Código
em html e javascript:


<html>

<head>
<title>pgm constroe e usa funções literais </title>

<script language="JavaScript">  // abre script javascript

function ordemNumerica (a,b) {return a - b; }


</script>   <!...  fecha script js  ....>

</head>

<body>

<script language="JavaScript">

 
//  executa uma função
  
a = new Array(33, 4, 1111, 222);
a.sort();
document.write("classificação alfabetica = " + a  ) ;
document.write("<br />");
a.sort(ordemNumerica);
document.write("classificação numerica = " + a ) ;

</script>

</body>

</html>


Obs 1.:
Copiar codigo acima para o endereço http://www.w3schools.com/js/tryit.asp?filename=tryjs_function2  e testar

Obs 2:
A função sort aceita como argumento outra função que indica o tipo de classificação
11. Exemplo 10 Escopo de função Solução:
O corpo da função é executado em um escopo local que difere do escopo global
.


Cria-se o escopo adicionando o objeto de chamada na frente da cadeia de escopo.

sintaxe --> 
Objeto.funcao.metodo.propriedade(argumento)


Objeto os construtores sempre começam com letra maiscula

a palavra chave this cria as propriedades dentro de um construtor

Código em html e javascript:

<head>
<script type="text/javascript">

function msgErro (numeroErro, descricaoErro)

{
document.write("Ocorreu um erro de execução:\nNumero do erro: " + numeroErro + "\nDescricao do erro: " + descricaoErro + "\nNome da variável: " + this.descricaoErro);

}

</script>
</head>


Obs 1.:
Copiar codigo acima para o endereço http://www.w3schools.com/js/tryit.asp?filename=tryjs_function2  e testar


12. Bibliografia Versão 1.5 do javascript:
  1. Javascript O guia definitivo. David Flanagan. O'REILLY Bookman. 2002
  2. Aprendendo Javascript. Shelley Powers. O'REILLY Novatec . 2010
  3. Javascript de AltoDesempenho. Nicholas C. Zakas. 2010
  4. Padrões Javascript. Stoyan Stefanov. 2011
  5. Javascript 24-Hour Trainer. Jeremy McPeak. 2011



link Arquivo origem: WExemplosFuncoesJavascript1.xml. referencia
Exemplos de funções no Javascript {12} Caracteristicas do Javascript
Exemplo 1 - Executando o js embutido na tag <html>  - Inline Exemplo 2 - Declarando e executando uma função embutida no html Exemplo 3 Executando com uma função externa ao html, como arquivo .js Exemplo 4 Executando várias funções sequencialmente Exemplo 5 Executando funções aninhadas dentro de outras Exemplo 6 - Executando sem função, incluindo direto no html Exemplo 7 Executando construtor de função Exemplo 8 Executando literais de função
Exemplo 9 Executando função como dado Exemplo 10 Escopo de função Bibliografia
Índice Local {9}
Projeto Apoie {6} Projeto Apoie Projeto PAS Produzir + Aprender + Simplificar Serviço Web Relacionamentos entre Personagens
Base de Conhecimento {5} Conhecimento Dado Informação consolidada Página Pronta - site apoie.org Pulo do Gato
Contato Projeto Apoie
Linguagem {5}
Javascript {3} Referências e Ferramentas Sintaxe Cheat Sheet
Erlang Quick Sort
LDC {2} LDC LDC - Sintaxe
Definição {9} Erlang Python 3.0 Ruby 1.9.1 - Sintaxe Ruby 1.9.1 - Léxico Shell Lua PHP XML Lazy BNF
If
Dojo {4} Coding Dojo Coding Dojo - Formatos
Soluções Coding Dojo {6} Dojo #34: Expressão Aritmética Dojo #33: Impedimento Dojo #32: Sequência Numérica Dojo #31: Tráfego Dojo #29: Boliche Dojo #28: Jogo da Vida
Dojo Rio
Qualidade {2}
5W {3} 5W2H 5W1H 5W2H - 5W1H - Modelo
PDCA
Componente {5} Componente ExibirLinguagem.htm Gerar Páginas Lista Tabela de Decisões
Paletas {10} Paleta - Mais utilizadas Paleta - Apoie Paleta - Apresentação e Componentes Paleta - Diagramas Paleta - Diagrama Sintático Paleta - Dojo Paleta - Logos Paleta - Projetos Paleta - Setas Paleta - Tecnologia
Evento {4} Pendência Estados de Componentes Scrum Prioridade
Método {5} Oficina Serviço Web Warnier/Orr Basics Apresentar Problema Resolvido Simples x Complexo
Imposto de Renda