![Page 1: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/1.jpg)
JavaScript: mais objetos - String, Date e Math
Carlos SantosLabMM 3 - NTC - DeCA - UAAula 15 e 16, 06-11-2013 e 8-11-2013
![Page 2: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/2.jpg)
Objetos nativos do JavaScript
• Array
• estudado numa das aula anteriores...
• outros objetos do JavaScript
• cada tipo de dados primitivo tem um objeto equivalente
• string
• number
• boolean
• Math, Date,...
![Page 3: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/3.jpg)
Objetos String
• Como criar:
• var string1 = new String(“Hello World”);!
• var string1 = “Hello World”;!
• Qual o melhor método?
• No JavaScript os métodos e propriedades dos objetos também podem ser aplicados em variáveis do mesmo tipo de dados;
• Não havendo dúvidas sobre o tipo de dados, o segundo método é preferível, porque...
• dessa forma é possível comparar o conteúdo e não os objetos!
![Page 4: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/4.jpg)
Objetos String
• O que é uma string?
!
!
!
• Propriedade length
• string1.length; // resultado será 11
0 1 2 3 4 5 6 7 8 9 10H e l l o W o r l dCaracter
Índice
![Page 5: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/5.jpg)
Objetos String
• Pesquisar uma string dentro de outra string
• indexOf()!
• lastIndexOf()!
• Parâmetros
• A substring a pesquisar;
• A posição/índice a partir da qual se quer iniciar a pesquisa (opcional).
• Resultado
• A posição onde a substring foi encontrada (começa em 0);
• -1 se não for encontrada.
![Page 6: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/6.jpg)
Objetos String
• Exemplo 1
var myString = “Hello jeremy. How are you Jeremy”;!
var foundAtPosition;!
foundAtPosition = myString.indexOf(“Jeremy”);!
alert(foundAtPosition); // ??
Exemplos retirados do Cap. 5 do livro Beginning Javascript
![Page 7: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/7.jpg)
Objetos String
• Exemplo 2
var myString = “Hello Jeremy. How are you Jeremy”;!
var foundAtPosition;!
foundAtPosition = myString.lastIndexOf(“Jeremy”);!
alert(foundAtPosition); // ??
![Page 8: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/8.jpg)
Objetos String
• Exemplo 3
var myString = “Hello Jeremy. How are you Jeremy”;!
var foundAtPosition;!
foundAtPosition = myString.indexOf(“Jeremy”);!
alert(foundAtPosition); // ??!
!
• Como encontrar todas as ocorrências de “Jeremy”?
![Page 9: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/9.jpg)
Objetos String
• Exemplo 4
var myString = "Hello Jeremy. How are you Jeremy";!
var foundAtPosition = -1;!
do {!
foundAtPosition = myString.indexOf("Jeremy", foundAtPosition + 1);!
alert(foundAtPosition); // ??!
} while (foundAtPosition != -1)
![Page 10: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/10.jpg)
Objetos String
• Copiar parte de uma string
• substr()!
• substring()!
• Parâmetros
• Primeiro parâmetro: posição inicial;
• Segundo parâmetro é opcional e diferente para cada método:
• substr: número de caracteres a copiar (length).
• substring: posição posterior ao último carácter a copiar;
• Resultado: Substring copiada da string original
![Page 11: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/11.jpg)
Objetos String
• Exemplo 5
var myString = “JavaScript”;!
var mySubString = myString.substring(0,4);!
alert(mySubString); // ??!
!
• Exemplo 6
var myString = “JavaScript”;!
var mySubString = myString.substr(0,4);!
alert(mySubString);!
• Sem o segundo parâmetro o resultado é a cópia até ao final da string
• E trocando os 0 por 2?
![Page 12: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/12.jpg)
Objetos String
• Exemplo 7
var fileName = window.location.href; fileName = fileName.substr(fileName.lastIndexOf(“/”) + 1); alert(fileName); // ??!
!
• Qual o resultado deste código?
![Page 13: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/13.jpg)
Objetos String
• Conversão para maiúsculas e minúsculas
• toLowerCase()!
• toUpperCase()!
• Parâmetros
• Não existem.
• Resultado
• A string original é convertida para maiúsculas ou minúsculas
![Page 14: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/14.jpg)
Objetos String
• Exemplo 8
var myString = “I Don’t Care About Case”;!
if (myString.toLowerCase() == “i don’t care about case”)!
{!
alert(“Who cares about case?”);!
}!
!
• Qual o resultado deste código?
![Page 15: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/15.jpg)
Objetos String
• Obter apenas um caracter da string
• charAt()!
• charCodeAt()!
• Parâmetros
• Posição/índice do carácter a obter numa string
• Resultado:
• charAt: o carácter na posição;
• charCodeAt: o código ASCII do carácter na posição
![Page 16: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/16.jpg)
Objetos String
• Exemplo 8
var myString = “Hello World!”!
alert (myString.charAt(2)); // ??!
alert (myString.charCodeAt(2)); // ??!
!
• Mais métodos de manipulação de strings
• Estudar Capítulo 9 do livro “Beginning JavaScript (Wrox)”
• Especial destaque para parte de “Expressões regulares” que são fundamentais para pesquisas mais avançadas.
![Page 17: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/17.jpg)
Objetos Date
• Este objeto facilita o acesso a informação e manipulação de dados relacionados com datas.
• A lista é extensa e pode ser consultada em:
• http://www.w3schools.com/jsref/jsref_obj_date.asp
![Page 18: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/18.jpg)
Objetos Date
• Declaração
• var theDate1 = new Date(); // objeto inicializado com a data atual do computador onde está a correr o script!
• var d = new Date(milliseconds);!
• var theDate2 = new Date(949278000000);!
• var d = new Date(dateString);!
• var theDate3 = new Date(“31 January 2010”);!
• var d = new Date(year, month, day, hours, minutes, seconds, milliseconds);!
• var theDate4 = new Date(2010,0,31,15,35,20,20);
![Page 19: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/19.jpg)
Objetos Date
• Obter referência temporal atual
• getTime()!
• Parâmetros
• Nenhum
• Resultado:
• Retorna o número de milissegundos passados desde o início do dia 1 de Janeiro de 1970.
![Page 20: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/20.jpg)
Objetos Date
• Exemplo 9
var d = new Date();!
alert(d.getTime() + " ms desde 1970/01/01");
![Page 21: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/21.jpg)
Objetos Date
• Exemplo 10 - saber o tempo decorrido desde o início de um jogo
• no arranque:
var dataInicial = new Date();!
tempoInicial = dataInicial.getTime(); // var global!
!
• em qualquer momento do jogo:
var dataActual = new Date();!
var tempoActual = dataActual.getTime();!
var tempoJogo = Math.floor((tempoActual-tempoInicial)/1000);
![Page 22: T15_T16_LM3: Mais objetos do Javascript (2013-2014)](https://reader033.vdocuments.site/reader033/viewer/2022051013/5494c58bac795925288b4e0d/html5/thumbnails/22.jpg)
Objetos Math
• Este objeto facilita o acesso a informação e manipulação de variáveis do tipo numérico.
• A lista é extensa e pode ser consultada em:
• http://www.w3schools.com/jsref/jsref_obj_math.asp