Você está aqui: JavaScript ::: Dicas & Truques ::: Matemática e Estatística

Como calcular Fatorial em JavaScript usando recursão - Como calcular Fatorial usando recursividade - Aprenda a calcular Fatorial usando JavaScript

Quantidade de visualizações: 14712 vezes
Embora existam várias formas de efetuar o cálculo de Fatorial, a forma mais comum é usando recursividade, ou seja, dividir a resolução do problema em partes menores e juntá-las no final.

Neste dica eu mostro como calcular Fatorial em JavaScript usando recursividade. Veja o código completo:

<html>
<head>
<title>Estudando JavaScript</title>
 
<script type="text/javascript">
  function fatorial(num){
    if(num > 1)
      return num * arguments.callee(num - 1);
    else 
      return 1;
  }
</script>
 
</head>
<body>
 
<script type="text/javascript">
  document.write("O fatorial de 5 é: " + fatorial(5));
</script>
 
</body>
</html>

Ao executar este código nós teremos o seguinte resultado:

O fatorial de 5 é: 120


JavaScript ::: Dicas & Truques ::: Cookies

Cookies em JavaScript - Como obter o valor de um cookie usando JavaScript

Quantidade de visualizações: 6511 vezes
Nesta dica eu mostro como podemos escrever uma função JavaScript chamada obterCookie() que recebe o nome de um cookie e retorna o seu valor. Veja que, se o cookie com o nome informado não existir, o valor null é retornado.

Veja o código JavaScript completo, incluindo o código HTML:

<html>
<head>
<title>Estudando JavaScript</title>

<script type="text/javascript">
  // função que permite obter um cookie
  function obterCookie(nome){    
    if(document.cookie.length > 0){
      c_start = document.cookie.indexOf(nome + "=");
      if(c_start != -1){ 
        c_start = c_start + nome.length + 1; 
        c_end = document.cookie.indexOf(";", c_start);
        if(c_end == -1){
          c_end = document.cookie.length;
        }
        
        return unescape(document.cookie.substring(
          c_start, c_end));
      } 
    }
    return null;
  }
</script>

</head>
<body>

<script type="text/javascript">
  // verifica se o cookie "nome_visitante" existe
  // e obtém seu valor
  var nome_visitante = obterCookie('nome_visitante');
  if(nome_visitante != null){
    document.writeln("O cookie nome_visitante existe. " + 
      "Seu valor é: " + nome_visitante);
  }
  else{
    document.writeln("O cookie nome_visitante não existe");
  }
</script>
 
</body>
</html>

Ao executar este código JavaScript nós teremos o seguinte resultado:

O cookie nome_visitante existe. Seu valor é: Osmar


JavaScript ::: Dicas & Truques ::: Data e Hora

Datas e Horas em JavaScript - Como obter o dia do mês em um objeto Date usando a função getDate()

Quantidade de visualizações: 8717 vezes
A função getDate() do objeto Date da linguagem JavaScript nos permite obter o dia do mês como um valor inteiro na faixa de 1 à 31. Veja abaixo um exemplo de seu uso:

<!doctype html>
<html>
<head>
  <title>O objeto Date do JavaScript</title>
</head>
<body>

<script type="text/javascript">
  // vamos obter a data atual
  var data = new Date();
  // vamos obter o dia da data atual
  var dia = data.getDate();
  // Vamos exibir o resultado
  document.write("O dia do mês é: " + dia);
</script>
  
</body>
</html>

Ao executar este código JavaScript nós teremos o seguinte resultado:

O dia do mes é: 5


JavaScript ::: Elementos de Formulários HTML ::: input type file Element/Object

Como obter a quantidade de arquivos que o usuário selecionou em um input type file

Quantidade de visualizações: 2233 vezes
Em algumas situações nós precisamos saber quantos arquivos o usuário selecionou em um elemento input type file. Para isso podemos usar a propriedade length do FileList que representa a lista de arquivos no input file. Veja o exemplo a seguir:

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<title>Estudos JavaScript</title>

</head>
<body>

<form>
  <input id="arquivo" onChange="contarArquivos()" name="arquivo" multiple type="file">
</form>

<script type="text/javascript">
  function contarArquivos(){
    // vamos obter uma referência ao elemento file
    var arquivo = document.getElementById("arquivo");
    // agora vamos obter a quantidade de arquivos que o usuário selecionou
    var quantArquivos = arquivo.files.length;
	 
    // mostramos o resultado
    window.alert("Você selecionou " + quantArquivos + " arquivos.");  
  }
</script>

</body>
</html>

Note que tiramos proveito do evento onChange() do input file para obter a informação desejada no exato momento que o usuário escolhe o(s) arquivos(s). Neste exemplo eu criei um input file multiple, ou seja, o usuário pode escolher mais de um arquivo por vez (em geral pressionando a tecla Ctrl para múltiplas seleções).


JavaScript ::: Dicas & Truques ::: Miscelâneas

JavaScript para iniciantes - Como obter o valor do maior número possível em JavaScript usando Number.MAX_VALUE

Quantidade de visualizações: 7074 vezes
Quando estamos desenvolvendo aplicações em JavaScript que lidam intensivamente com valores numéricos, é sempre uma boa idéia sabermos, de antemão, qual o maior valor numérico possível nessa linguagem de programação.

Para isso podemos usar a propriedade MAX_VALUE do objeto Number. Veja como isso pode ser feito no trecho de código abaixo:

<html>
<head>
<title>Estudando JavaScript</title>
</head>
<body>
 
<script type="text/javascript">
  var maximo = Number.MAX_VALUE;
  document.write("O maior número em JavaScript é " 
    + maximo);
</script>
 
</body>
</html>

Ao executar este código nós teremos o seguinte resultado:

O maior número em JavaScript é 1.7976931348623157e+308

Qualquer valor numérico acima disso, será tratado pela linguagem JavaScript como Infinity.


JavaScript ::: Web APIs (APIs Web) ::: MediaDevices Interface (Interface MediaDevices)

HTML5 + JavaScript - Como usar a interface MediaDevices em seus códigos JavaScript

Quantidade de visualizações: 471 vezes
A interface MediaDevices é um daqueles objetos que vemos com frequencia em códigos JavaScript e não entendemos muito bem o seu funcionamento. Nesta dica vou decifrá-la.

O objetivo da interface MediaDevices é fornecer acesso aos dispositivos de entrada de mídia conectadas e às quais o navegador tem acesso, a saber, câmeras, microfone e compartilhamento de tela. É por meio dessa interface que acessamos tais dispositivos.

A interface MediaDevices está disponível como um objeto do objeto navigator. Veja como testar sua existência e suporte no seu navegador web:

<!DOCTYPE html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 
<title>A interface MediaDevices</title>
  
</head>
<body>
 
<script type="text/javascript">
  // o browser suporta o MediaDevices?
  if(navigator.mediaDevices){
    window.alert("O navegador suporta o MediaDevices");  
  }
  else{
    window.alert("O navegador não suporta o MediaDevices");  
  }
</script>
  
</body>
</html>

Note que mediaDevices é um objeto Singleton do objeto navigator, ou seja, só há uma instância desse objeto disponível no contexto de execução de códigos no navegador. Há também a preocupação em relação à segurança. Alguns navegador podem restringir o acesso a este objeto se você não estiver em um ambiente HTTPS ou localhost.


Veja mais Dicas e truques de JavaScript

Dicas e truques de outras linguagens

Quem Somos

Osmar J. Silva
WhatsApp +55 (062) 98553-6711

Goiânia-GO
Full Stack Developer, Professional Java Developer, PHP, C/C++, Python Programmer, wxWidgets Professional C++ Programmer, Freelance Programmer. Formado em Ciência da Computação pela UNIP (Universidade Paulista Campus Goiânia) e cursando Engenharia Elétrica pela PUC-Goiás. Possuo conhecimentos avançados de Java, Python, JavaScript, C, C++, PHP, C#, VB.NET, Delphi, Android, Perl, e várias tecnologias que envolvem o desenvolvimento web, desktop, front-end e back-end. Atuo há mais de 15 anos como programador freelancer, atendendo clientes no Brasil, Portugal, Argentina e vários outros paises.
Entre em contato comigo para, juntos, vermos em que posso contribuir para resolver ou agilizar o desenvolvimento de seus códigos.
José de Angelis
WhatsApp +55 (062) 98243-1195

Goiânia-GO
Formado em Sistemas de Informação pela Faculdade Delta, Pós graduado em Engenharia de Software (PUC MINAS), Pós graduado Marketing Digital (IGTI) com ênfase em Growth Hacking. Mais de 15 anos de experiência em programação Web. Marketing Digital focado em desempenho, desenvolvimento de estratégia competitiva, analise de concorrência, SEO, webvitals, e Adwords, Métricas de retorno. Especialista Google Certificado desde 2011 Possui domínio nas linguagens PHP, C#, JavaScript, MySQL e frameworks Laravel, jQuery, flutter. Atualmente aluno de mestrado em Ciência da Computação (UFG)
Não basta ter um site. É necessário ter um site que é localizado e converte usuários em clientes. Se sua página não faz isso, Fale comigo e vamos fazer uma analise e conseguir resultados mais satisfatórios..

Linguagens Mais Populares

1º lugar: Java
2º lugar: C#
3º lugar: PHP
4º lugar: Delphi
5º lugar: Python
6º lugar: JavaScript
7º lugar: C
8º lugar: C++
9º lugar: VB.NET
10º lugar: JSP (Java Server Pages)



© 2021 Arquivo de Códigos - Todos os direitos reservados | Versión en Español | Versão em Português