JavaScript ::: W3C DOM - (Wide Web Consortium) Document Object Model ::: Navegação e Pesquisa de Nós (Nodes)

Como retornar uma coleção de nós filhos de um elemento HTML usando a propriedade childNodes do DOM do JavaScript

Quantidade de visualizações: 13036 vezes
Em algumas situações temos um elemento HTML (um elemento DIV, por exemplo) e gostaríamos de retornar uma coleção contendo seus elementos filhos. Para isso podemos usar a coleção childNodes, definida no World Wide Web Consortium (W3C) Document Object Model (DOM) Level 1.

A coleção childNodes contém todos os descendentes diretos de um determinado elemento HTML, incluindo os nós textos (text nodes) e comentários (comment nodes). Além disso, a ordem dos elementos retornados é aquela definida no código-fonte do documento HTML.

Veja uma página HTML contendo um elemento DIV e, dentro deste, um parágrafo, um link e um elemento SPAN. Note como usamos a propriedade childNodes no elemento DIV para retornar seus três elementos filhos diretos (note que as quebras de linhas e o elemento BR também serão retornados):

<html>
<head>
<title>Estudos JavaScript</title>

<script type="text/javascript">
  function obterNosFilhos(){
    // vamos obter uma referência ao elemento div com o id "container"
    var pai = document.getElementById("container");

    // vamos obter a coleção de elementos filhos
    var filhos = pai.childNodes;

    // vamos obter a quantidade de elementos filhos deste elemento
    window.alert("O elemento div contém " + filhos.length +
      " elementos filhos.");

    // vamos percorrer todos os elementos
    for(var i = 0; i < filhos.length; i++){
      var filho = filhos[i];

      // este filho é um nó texto?
      if(filho.nodeType == 3){
        window.alert("O " + (i + 1) + "º filho é um nó texto. " +
          "Seu conteúdo é: " + filho.data);
      }
      // este filho é um nó elemento?
      else if(filho.nodeType == 1){
        window.alert("O " + (i + 1) + "º filho é um nó elemento. " +
          "Seu conteúdo é: " + filho.innerHTML);
      }
    }
  }  
</script>

</head>
<body>

<div id="container">
<p>Sou um parágrafo</p>
<a href="http://www.google.com">Sou um link</a><br>
<span>E eu sou um elemento span</span>
</div>

<br>
<button onclick="obterNosFilhos()">Obter nós filhos do elemento div</button>

</body>
</html>

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

O elemento div contém 8 elementos filhos.
O 1º filho é um nó texto. Seu conteúdo é:
O 2º filho é um nó elemento. Seu conteúdo é: Sou um parágrafo
O 3º filho é um nó texto. Seu conteúdo é:
O 4º filho é um nó elemento. Seu conteúdo é: Sou um link
O 5º filho é um nó elemento. Seu conteúdo é:
O 6º filho é um nó texto. Seu conteúdo é:
O 7º filho é um nó elemento. Seu conteúdo é: E eu sou um elemento span
O 8º filho é um nó texto. Seu conteúdo é:

Ao executar este exemplo você perceberá que a quantidade de elementos filhos no IE é diferente daquela relatada pelo Firefox. Isso acontece devido à forma que os dois browsers tratam quebras de linhas e espaços. Tenha a certeza de usar a propriedade nodeType para identificar o tipo de elemento filho sendo retornado.

A coleção childNodes pode ser chamada a partir dos seguintes elementos: a, abbr, acronym, address, applet, b, bdo, big, blink, blockquote, body, button, caption, center, cite, code, col, colgroup, dd, del, dfn, dir, div, dl, dt, em, fieldset, font, form, frameset, h1, h2, h3, h4, h5, h6, head, html, i, img, ins, kbd, keygen, label, legend, li, listing, map, marquee, menu, nobr, noframes, noscript, object, ol, optgroup, option, p, plaintext, pre, q, rt, ruby, s, samp, select, small, span, strike, strong, sub, sup, table, tbody, td, textarea, tfoot, th, thead, tr, tt, u, ul, var, xml e xmp.

Esta dica foi escrita e testada no Google Chrome 127.0.6533.122 (Versão oficial) 64 bits.


Python ::: Python para Engenharia ::: Unidades de Medida

Como converter Centímetros Cúbicos em Metros Cúbicos em Python - Python para Física e Engenharia

Quantidade de visualizações: 436 vezes
Em muitas situações nós temos uma medida de volume em cm3 e queremos transformá-la em m3, que é a medida de volume do Sistema Internacional (SI). Para isso só precisamos dividir os centímetros cúbicos por 1.000.000. Veja a fórmula:

\[\text{Metros Cúbicos} = \frac{\text{Centímetros Cúbidos}}{1.000.000} \]

Agora veja o código Python que pede para o usuário informar a medida de volume em centímetros cúbicos e a converte para metros cúbicos. Note que mostrei como exibir o resultado em notação científica e sem notação científica:

# função principal do programa
def main():
  # vamos ler a medida em centímetros cúbicos
  cent_cubicos = float(input("Informe os centímetros cúbicos: "))
  
  # agora calculamos os metros cúbicos
  met_cubicos = cent_cubicos / 1000000.00
    
  # e mostramos o resultado
  print("Você informou {0} centímetros cúbicos.".format(cent_cubicos))
  print("Isso equivale a {0} metros cúbicos.".format(met_cubicos))
  print(f"Sem notação científica: {met_cubicos:.6f}")

if __name__== "__main__":
  main()

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

Informe os centímetros cúbicos: 35
Você informou 35.0 centímetros cúbicos.
Isso equivale a 3.5E-5 metros cúbicos.
Sem notação científica: 0,000035


PHP ::: Dicas & Truques ::: Arrays e Matrix (Vetores e Matrizes)

Como retornar a quantidade de elementos em um array PHP usando a função sizeof()

Quantidade de visualizações: 17400 vezes
Em várias ocasiões nós precisamos retornar o tamanho de um vetor em PHP, ou seja, a quantidade de elementos do array. Para isso nós podemos usar a função sizeof().

Veja a seguir um exemplo de seu uso:

<?php
/*
  Este exemplo mostra como obter a quantidade de
  elementos em um array usando sizeof().
*/

$pessoas[0] = "Carlos";
$pessoas[1] = "Juliana";
$pessoas[2] = "Igor";
$pessoas[3] = "Marcelo";
$pessoas[4] = "Amélia";

$tam = sizeof($pessoas);

echo "O array contém " . $tam . " elementos.";
?>

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

O array contém 5 elementos.


Java ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade)

Exercício Resolvido de Java - Como contar de 0 até 10 usando recursividade em Java - Funções recursivas em Java

Quantidade de visualizações: 5189 vezes
Pergunta/Tarefa:

Escreva um método Java recursivo que conta e exibe os valores de 0 até 10. Seu método deverá possuir a seguinte assinatura:

public static void contarRecursivamente(int n){
  // sua implementação aqui
}
Veja que o método deverá receber o valor 0 e efetuar novas chamadas a si mesmo até que os valores de 0 a 10 sejam exibidos. O ponto de parada da recursividade é a exibição do valor 10.

Sua saída deverá ser parecida com:

0  1  2  3  4  5  6  7  8  9  10
Resposta/Solução:

Veja a resolução comentada deste exercício usando Java:

package exercicio;

public class Exercicio {
  public static void main(String[] args) {
    // efetua uma chamada ao método recursivo 
    // fornecendo o primeiro valor
    contarRecursivamente(0);
  }
  
  // método recursivo que conta de 0 até 10;
  public static void contarRecursivamente(int n){
    // vamos exibir o número atual
    System.out.print(n + "  ");
    
    // devemos prosseguir com a recursividade?
    if(n < 10){
      // incrementa o valor de n
      n++;  
      // e faz uma nova chamada recursiva 
      contarRecursivamente(n);
    }
  }
}



Java ::: Dicas & Truques ::: Mouse e Teclado

Como verificar se Num Lock está ativado no seu teclado usando o método getLockingKeyState() da classe Toolkit da linguagem Java

Quantidade de visualizações: 8528 vezes
Nesta dica mostrarei como é possível verificar se Num Lock está ativado no seu teclado. Para isso nós podemos usar o método getLockingKeyState() da classe Toolkit, do pacote java.awt.

Veja o exemplo completo:

package arquivodecodigos;

import java.awt.Toolkit;
import java.awt.event.*;
 
public class Estudos{
  public static void main(String[] args){
    Toolkit tk = Toolkit.getDefaultToolkit();    
     
    if(tk.getLockingKeyState(KeyEvent.VK_NUM_LOCK)){
      System.out.println("Num Lock está ativado");
    }  
    else{
      System.out.println("Num Lock não está ativado");    
    } 

    System.exit(0);
  }
}

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

Num Lock não está ativado


Python ::: Dicas & Truques ::: Data e Hora

Como formatar a data e hora atual em Python usando a função strftime() da classe datetime

Quantidade de visualizações: 10250 vezes
Nesta dica eu vou mostrar como é possível usar o método strftime() da classe datetime para formatar e mostrar a data e hora atual no Python.

Veja o código completo para o exemplo:

from datetime import datetime
import locale

def main():
  # Configurações do usuário
  locale.setlocale(locale.LC_ALL, '')
 
  # Obtém um datetime da data e hora atual
  hoje = datetime.today()
 
  # Exibe a data atual formatada
  data = hoje.strftime("Hoje é %A, %d de %B de %Y")
  print(data)
 
if __name__== "__main__":
  main()

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

Hoje é segunda-feira, 08 de março de 2019


R ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o comprimento da hipotenusa em R dadas as medidas do cateto oposto e do cateto adjascente

Quantidade de visualizações: 1093 vezes
Nesta dica mostrarei como é possível usar a linguagem R para retornar o comprimento da hipotenusa dadas as medidas do cateto oposto e do cateto adjascente. Vamos começar analisando a imagem a seguir:



Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados.

Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras):

\[c^2 = a^2 + b^2\]

Tudo que temos a fazer a converter esta fórmula para código R (um script do R). Veja:

a <- 20 # medida do cateto oposto
b <- 30 # medida do cateto adjascente
  
# agora vamos calcular o comprimento da hipotenusa
c <- sqrt(a ^ 2 + b ^ 2)
 
# e mostramos o resultado
paste("O comprimento da hipotenusa é:", c)

Ao executar este código R (script do R) nós teremos o seguinte resultado:

[1] "O comprimento da hipotenusa é: 36.0555127546399"

Como podemos ver, o resultado retornado com o código R confere com os valores da imagem apresentada.


C ::: Desafios e Lista de Exercícios Resolvidos ::: Métodos, Procedimentos e Funções

Exercício Resolvido de C - Como converter minutos em segundos usando C

Quantidade de visualizações: 605 vezes
Pergunta/Tarefa:

Escreva um programa C para converter minutos em segundos. Você deverá criar uma função converter() que receberá, como argumento, um número inteiro representando os minutos e retornará, também como um inteiro, os segundos correspondentes. Os minutos deverão ser informados pelo usuário.

Sua saída deverá ser parecida com:

Informe os minutos: 15
A quantidade de segundos é: 900
Resposta/Solução:

Veja a resolução comentada deste exercício em C:

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>

// protótipo da função usada para converter minutos
// em segundos
int converter(int minutos);

// função principal do programa
int main(int argc, char *argv[]){
  // variáveis usadas na resolução do problema
  int minutos, segundos;
  
  setlocale(LC_ALL,""); // para acentos do português
 
  // vamos pedir para o usuário informar os minutos
  printf("Informe os minutos: ");
  scanf("%d", &minutos);
  
  // agora vamos chamar a função converter() para converter
  // os minutos em segundos
  segundos = converter(minutos);
  
  // e mostramos o resultado
  printf("A quantidade de segundos é: %d", segundos);
  
  printf("\n\n");
  system("PAUSE");	
  return 0;
}

// função usada para converter minutos em segundos
int converter(int minutos){
  int segundos = minutos * 60;
  return segundos;
}



JavaScript ::: Dicas & Truques ::: Trigonometria - Funções Trigonométricas

Como calcular o cateto oposto dadas as medidas da hipotenusa e do cateto adjascente em JavaScript

Quantidade de visualizações: 1533 vezes
Todos estamos acostumados com o Teorema de Pitágoras, que diz que "o quadrado da hipotenusa é igual à soma dos quadrados dos catetos". Baseado nessa informação, fica fácil retornar a medida do cateto oposto quando temos as medidas da hipotenusa e do cateto adjascente. Isso, claro, via programação em linguagem JavaScript.

Comece observando a imagem a seguir:



Veja que, nessa imagem, eu já coloquei os comprimentos da hipotenusa, do cateto oposto e do cateto adjascente. Para facilitar a conferência dos cálculos, eu coloquei também os ângulos theta (que alguns livros chamam de alfa) e beta já devidamente calculados. A medida da hipotenusa é, sem arredondamentos, 36.056 metros.

Então, sabendo que o quadrado da hipotenusa é igual à soma dos quadrados dos catetos (Teorema de Pitógoras):

\[c^2 = a^2 + b^2\]

Tudo que temos que fazer é mudar a fórmula para:

\[a^2 = c^2 - b^2\]

Veja que agora o quadrado do cateto oposto é igual ao quadrado da hipotenusa menos o quadrado do cateto adjascente. Não se esqueça de que a hipotenusa é o maior lado do triângulo retângulo.

Veja agora como esse cálculo é feito em linguagem JavaScript:

<html>
<head>
  <title>Estudos JavaScript</title>
</head>
 
<body>

<script type="text/javascript">
  var c = 36.056; // medida da hipotenusa
  var b = 30; // medida do cateto adjascente
  
  // agora vamos calcular o comprimento da cateto oposto
  var a = Math.sqrt(Math.pow(c, 2) - Math.pow(b, 2));
 
  // e mostramos o resultado
  document.writeln("A medida do cateto oposto é: " + a);
</script>

</body>
</html>

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

A medida do cateto oposto é: 20.00087838071118

Como podemos ver, o resultado retornado com o código JavaScript confere com os valores da imagem apresentada.


C ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar o laço do...while em C - Linguagem C para iniciantes: O laço do...while

Quantidade de visualizações: 31726 vezes
O laço do...while em C é bem parecido com o laço while. A diferença é que no do...while, a condição é testada no final da primeira iteração, o que garante que o laço será executado no mínimo uma vez. Veja um exemplo de seu uso:

 
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int valor = 1;

  do{
    printf("%d  ", valor);
	valor++;
  }while(valor <= 10);

  printf("\n\n");
  system("PAUSE");
  return 0;
}


Carregar Publicações Anteriores


Nossas 20 dicas & truques de programação mais populares

Você também poderá gostar das dicas e truques de programação abaixo

Nossas 20 dicas & truques de programação mais recentes

Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site

Últimos Exercícios Resolvidos

E-Books em PDF

E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

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



© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 46 usuários muito felizes estudando em nosso site.