Você está aqui: JavaScript ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes) |
|
Como chamar uma função de callback para os elementos individuais de um array usando a função forEach() - Vetores e matrizes em JavaScriptQuantidade de visualizações: 1681 vezes |
|
O método forEach(), adicionado à linguagem JavaScript por meio do ECMAScript 5 (JavaScript 5, ECMAScript 2009, ES5) é usado quando queremos acessar os elementos de um vetor individualmente e chamar, para cada um deles, uma função de callback personalizada. Veja no trecho de código abaixo como usar a função forEach() para obter a soma de todos os elementos maiores ou iguais a 20: <script type="text/javascript"> function obterSoma(valor, indice, vetor){ if(valor >= 20){ soma = soma + valor; } } var valores = new Array(21, 5, 30, 7, 12, 3); // vamos obter a soma dos valores maiores ou iguais a 20 var soma = 0; // percorremos os elementos do vetor individualmente valores.forEach(obterSoma); window.alert("A soma é: " + soma); </script> Uma função passada para o método forEach() pode conter os seguintes argumentos (nessa mesma ordem): a) O valor do item; b) O índice do item (opcional); c) O vetor a partir do qual o método forEach() está sendo chamado (opcional). Veja mais um código no qual obtemos a soma dos elementos cujos valores sejam maiores que seu antecessor (com exceção do primeiro elemento): <script type="text/javascript"> function obterSoma(valor, indice, vetor){ if(indice == 0){ soma = soma + valor; } else{ if(valor > vetor[indice - 1]){ soma = soma + valor; } } } var valores = new Array(8, 5, 30, 7, 12, 3); // vamos dos elementos cujos valores sejam // maiores que seu antecessor (com exceção do // primeiro elemento) var soma = 0; // percorremos os elementos do vetor individualmente valores.forEach(obterSoma); window.alert("A soma é: " + soma); </script> O resultado será 50, pois obtemos a soma dos valores 8, 30 e 12. |
|
Link para compartilhar na Internet ou com seus amigos: | |
Anúncio Patrocinado | |
Node.js ::: Dicas & Truques ::: Arquivos e Diretórios |
Como obter o diretório de instalação do Node.js - O diretório de trabalho do Node.jsQuantidade de visualizações: 1790 vezes |
Em algumas situações nós gostaríamos de obter o diretório de instalação, ou diretório de trabalho do Node.js. Isso pode ser feito por meio da variável __dirname ou da função cwd() do objeto process. Tanto a variável quanto a função process.cwd() fazem parte do core do Node.js e não precisam ser importados. Veja abaixo um exemplo de um aplicação funcional que mostra o nome do diretório de trabalho: // importamos o módulo HTTP var http = require("http"); http.createServer(function(request, response){ // Aqui nós enviamos o cabeçalho HTTP, com a resposta // 200 (OK) e o content type text/plain response.writeHead(200, {'Content-Type': 'text/plain'}); // Vamos obter e mostrar o diretório de trabalho do Node.js var diretorio = __dirname; // poderíamos também usar // var diretorio = process.cwd(); response.write('O diretório de trabalho é: ' + diretorio + '\n'); // fechamos a resposta HTTP response.end(); }).listen(8081); // o HTTP server vai ouvir na posta 8081 // Que tal uma mensagem no console? console.log('O servidor está ouvindo em http://127.0.0.1:8081/'); Depois de executar o servidor, abra seu navegador no endereço http://127.0.0.1:8081 e você terá o seguinte resultado: O diretório de trabalho é: c:\estudos_nodejs |
Delphi ::: Classes, Controles e Componentes ::: TRegistry (Registro do Windows) |
Como verificar se uma chave já existe no registro do Windows usando a função KeyExists() da classe TRegistry do DelphiQuantidade de visualizações: 16549 vezes |
Em algumas situações nós gostaríamos de verificar se uma determinada chave já existe no registro do Windows, talvez antes de criá-la, excluí-la ou tentar ler algum de seus valores. O método KeyExists() da classe TRegistry pode ser usado para esta finalidade. Este método recebe uma string representando a chave a ser pesquisada e retorna um valor Boolean indicando a existência da chave. Veja o trecho de código abaixo: procedure TForm3.Button5Click(Sender: TObject); var reg: TRegistry; begin // uses Registry // vamos criar uma instância da classe TRegistry reg := TRegistry.Create; // a chave raiz padrão é HKEY_CURRENT_USER mas, por via das dúvidas // vamos reafirmar isso reg.RootKey := HKEY_CURRENT_USER; // vamos verificar a existência de uma chave a partir da chave raiz if reg.KeyExists('Arquivo de Códigos') then begin ShowMessage('A chave pesquisada existe.'); end else begin ShowMessage('A chave pesquisada não existe.'); end; // vamos liberar o registro reg.Free; end; Aqui nós estamos verificando a existência da chave "Arquivo de Códigos" a partir da chave raiz HKEY_CURRENT_USER. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Dicas & Truques ::: Formatação de datas, strings e números |
Como usar o método format() da classe NumberFormat do Java para formatar um valor float ou double de acordo com as configurações regionais - RevisadoQuantidade de visualizações: 10765 vezes |
Nesta dica mostrarei como usar o método format() da classe NumberFormat da linguagem Java. Esta classe está no pacote java.text e é usada para a formatação e análise de valores numéricos. Note como usei o método getInstance() sem argumentos. Isso nos permite retornar uma instância de NumberFormat de acordo com as configurações regionais da máquina na qual o código está sendo executado. Veja o código completo: package arquivodecodigos; import java.text.NumberFormat; public class Estudos{ public static void main(String[] args){ // vamos double a ser formatado double valor = 1234567.89; // vamos obter uma instância de acordo com as configurações // regionais NumberFormat nf = NumberFormat.getInstance(); // e agora usamos o método format() para formatar String numFormatado = nf.format(valor); // exibimos o valor original System.out.println("Sem formatação: " + valor); // com formatação System.out.println("Com formatação: " + numFormatado); } } Ao executar este código nós teremos o seguinte resultado: Sem formatação: 1234567.89 Com formatação: 1.234.567,89 Esta dica foi revisada e testada no Java 8. |
C# ::: Dicas & Truques ::: Arquivos e Diretórios |
Como usar a classe FileSystemWatcher em seus programas C#Quantidade de visualizações: 8490 vezes |
Podemos usar objetos da classe FileSystemWatcher quando queremos monitorar mudanças em um determinado diretório do sistema. Estas alterações podem ser observadas em arquivos e subdiretórios do diretório especificado. Usando objetos desta classe nós podemos monitorar modificações em arquivos no computador local, em um drive na rede ou em um computador remoto. Veja a posição desta classe na hierarquia de classes da plataforma .NET: System.Object System.MarshalByRefObject System.ComponentModel.Component System.IO.FileSystemWatcher Para adicionar um componente FileSystemWatcher em sua aplicação C# basta localizá-lo na seção Components da Toolbox. Em seguida clique no mesmo e arraste-o para o formulário. Para definir o diretório a ser monitorado, clique no componente, acesse suas propriedades e defina o caminho do diretório na propriedade Path. Um exemplo de diretório poderia ser "C:\arquivo de codigos". Neste exemplo veremos como detectar alterações nos arquivos e sub-diretórios. Desta forma, vá nos eventos do componente FileSystemWatcher e insira o código abaixo para o evento Changed: private void fileSystemWatcher1_Changed(object sender, FileSystemEventArgs e){ // vamos verificar o que foi modificado neste diretório textBox1.AppendText("Arquivo: " + e.FullPath + " sofreu alterações: " + e.ChangeType + Environment.NewLine); } Execute a aplicação e experimente criar um arquivo txt no diretório "C:\arquivo de códigos" e modificar seu conteúdo várias vezes. Volte à aplicação e a caixa de texto terá um conteúdo parecido com: Arquivo: C:\arquivo de codigos\dados2.txt sofreu alterações: Changed Arquivo: C:\arquivo de codigos\dados2.txt sofreu alterações: Changed |
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como excluir todos os itens de uma ListBox do Delphi - Como remover todos os itens da ListBox usando a função ClearQuantidade de visualizações: 14246 vezes |
Em algumas situações nós precisamos excluir todos os itens de uma ListBox. Para tais situações podemos usar o método Clear da classe ListBox. Veja:procedure TForm1.Button2Click(Sender: TObject); begin // vamos excluir todos os itens da ListBox ListBox1.Clear; // poderíamos também usar // ListBox1.Items.Clear; end; Note que podemos também chamar o método Clear diretamente no objeto Items da ListBox, embora a chamada na ao método Clear da lista seja mais comum. É possível também excluir os itens de uma ListBox individualmente chamando a função Delete() no objeto Items. Neste caso nós usamos um laço e percorremos todos os elementos da lista e os excluímos um a um. É importante, para estes casos, lembrarmos de percorrer os itens do último para o primeiro. Caso esta regra não seja obedecida, poderá haver erros de acesso durante a exclusão. Veja o código: procedure TForm1.Button2Click(Sender: TObject); var i: Integer; begin // vamos percorrer todos os itens da ListBox do último // para o primeiro for i := ListBox1.Items.Count - 1 downto 0 do begin // vamos excluir o item no índice correspondente ListBox1.Items.Delete(i); end; end; Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Desafios, Exercícios e Algoritmos Resolvidos de Delphi |
Veja mais Dicas e truques de Delphi |
Dicas e truques de outras linguagens |
Códigos Fonte |
Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais |
Linguagens Mais Populares |
1º lugar: Java |