Dia 02
Baixe este arquivo e o inclua no html, para que seja possível utilizá-lo nos testes dos exercícios abaixo.
01. Heróis com classe
Crie uma classe Herois
que recebe no seu construtor um array com as informações dos personagens. Exemplo (sem todas propriedades dos personagens, para exemplo completo olhar o arquivo baixado acima):
let herois = new Herois([{ name: 'Deadpool' }, { name: 'Iron Man' }]);
02. Fora da guerra civíl
Escreva um método foraDaGuerraCivil()
de instância da classe Herois
que retorna um array com todos aqueles personagens que NÃO participaram da guerra civíl.
Para saber quando um personagem participou da guerra civíl, basta procurar no seu array events
por algum item que tenha 'Civil War'
dentro da string.
03. Mais publicado
Escreva um método maisPublicado()
de instância da classe Herois
que retorna o objeto personagem (não é preciso criar classe) que mais possui histórias em quadrinhos publicadas.
Para saber a quantidade de histórias em quadrinhos, utilize a propriedade available
de comics
. Desconsidere a diferença entre os items
dentro de comics e o valor de available, pois tivemos que reduzir a quantidade de comics trazidos na coleção, para ficar mais leve o array.
04. Média de páginas
Escreva uma função mediaPaginas()
de instância da classe Herois
que retorna a média de páginas de todos quadrinhos dos personagens. Utilize a propriedade pageCount
da comic.
05. Longevidade
Escreva um método seriesPorLongevidade
de instância da classe Herois
que retorna todas as séries dos personagens ordenadas por tempo de atividade descendente, ou seja, as séries que ficaram / estão há mais tempo sendo produzidas vêm primeiro.
Para saber a longevidade de uma série, basta utilizar os campos startYear
e endYear
da série.
06. Comic mais cara
Escreva um método comicMaisCara
de instância da classe Herois
que retorna o objeto comic mais caro entre todos personagens.
Para descobrir o preço total de um comic, some todo seu array prices
.