Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Arrays</title>
- <!-- um array é uma coleção -->
- </head>
- <body>
- <script>
- var a = []; //notação +sucinta
- var alt = new Array(); //deixa evidente que há um tipo de dados em ação = Array
- var b = [1, 2];
- var c = ["Artur", "Maria", "Carla"]; //sempre o mesmo tipo
- var d = [1, true, "Artur"]; //3 tipos diferentes Number, Boolean, String => possível nas linguagens fracamente tipificadas
- //notação JSON (não é um array!)
- var aluno = {
- "numero":1,
- "inscrito":true,
- "nome":"Artur"
- };
- //como endereçamos as "coisas", os "objetos", os valores contidos num array
- var a2 = [1,2,3]; //por exemplo, como enderçar o último dos valores?
- /*
- num array, todos os elementos são endereçáveis
- significa: todos têm um endereço
- qual é esse endereço?
- em JS os endereços em arrays são numéricos, baseados em zero, e automáticos
- quer dizer que o 1 vive no endereço 0, o 2 no endereço 1, o 3 no endereço 2
- ou seja, se tivéssemos (NÃO TEMOS EM JS!) um operador para relacionar
- endereços com valores teríamos isto
- [1, 2, 3]
- */
- //utilização do operador de endereçamento
- // [ left-square-bracket ] right-square-bracket
- a2[0] = 10;
- a2[1] = 20;
- a2[2] = 30;
- document.write (a2);
- document.write ("<hr>");
- a2[0]=2*a2[0];
- a2[1]=2*a2[1];
- a2[2]=2*a2[2];
- document.write (a2);
- document.write ("<hr>");
- //[20, 40, 60]
- //arrays 1D
- var a3 = [
- [], //0
- [1,2], //1
- ["A", "B"] //2
- ];
- a3[1][0] = "C";
- document.write (a3);
- var aposta = [1,2,3,4];
- //como acrescentar elementos à coleção
- //acrescentar no final (método push)
- aposta.push(5); //[1,2,3,4,5]
- aposta.push("banana"); //[1,2,3,4,5, "banana"]
- //aposta[6] = "morango";
- aposta[aposta.length] = "morango";
- //[1,2,3,4,5, "banana", "morango"]
- //acrescentar no início => implica reendereçar todos os valores => computacionalmente custoso
- //método unshift (métodos são comportamentos de objetos)
- aposta.unshift(0); //[0, 1, 2, 3, 4, 5, "banana", "morango"];
- document.write ("<br>");
- document.write (aposta);
- document.write ("<br>");
- document.write (typeof(aposta));
- var hoje = new Date();
- document.write ("<br>");
- document.write (typeof(hoje));
- //como distinguir o tipo EFETIVO do objeto
- //porque, qq que seja o objeto, typeof responderá SEMPRE apenas "object"
- //a prototipagem
- document.write ("<br>");
- document.write (aposta.constructor.name+"<br>");
- document.write (hoje.constructor.name+"<br>");
- </script>
- </body>
- </html>
Add Comment
Please, Sign In to add comment