diff --git a/challenge-12/challenge-12.js b/challenge-12/challenge-12.js index 2dc88b7129..91c4d5aa65 100644 --- a/challenge-12/challenge-12.js +++ b/challenge-12/challenge-12.js @@ -1,3 +1,4 @@ +(function() { /* Envolva todo o conteúdo desse arquivo em uma IIFE. */ @@ -10,19 +11,23 @@ Crie um objeto chamado `person`, com as propriedades: Preencha cada propriedade com os seus dados pessoais, respeitando o tipo de valor para cada propriedade. */ -// ? +var person = { + name : 'Felipe', + lastname : 'Freitas', + age : 25 +} console.log( 'Propriedades de "person":' ); /* Mostre no console, em um array, todas as propriedades do objeto acima. Não use nenhuma estrutura de repetição, nem crie o array manualmente. */ -// ? +console.log(Object.keys(person)) /* Crie um array vazio chamado `books`. */ -// ? +var books = [] /* Adicione nesse array 3 objetos, que serão 3 livros. Cada livro deve ter a @@ -30,41 +35,53 @@ seguintes propriedades: `name`: String `pages`: Number */ -// ? +books.push( + {name : 'Narnia', pages : 200}, + {name : 'Jumanji', pages : 600}, + {name : 'Percy Jackson', pages : 400} +); + console.log( '\nLista de livros:' ); /* Mostre no console todos os livros. */ -// ? +console.log(books) console.log( '\nLivro que está sendo removido:' ); /* Remova o último livro, e mostre-o no console. */ -// ? +console.log(books.pop()) console.log( '\nAgora sobraram somente os livros:' ); /* Mostre no console os livros restantes. */ -// ? +console.log(books) /* Converta os objetos que ficaram em `books` para strings. */ -// ? +for (var prop in books) { + books[prop] = JSON.stringify(books[prop]); +} + console.log( '\nLivros em formato string:' ); /* Mostre os livros nesse formato no console: */ -// ? +console.log(books) /* Converta os livros novamente para objeto. */ -// ? + +for (var i = 0; i < books.length; i++) { + books[prop] = JSON.parse(books[prop]); +} + console.log( '\nAgora os livros são objetos novamente:' ); /* @@ -72,29 +89,34 @@ Mostre no console todas as propriedades e valores de todos os livros, no formato abaixo: "[PROPRIEDADE]: [VALOR]" */ -// ? +for (var i = 0; i < books.length; i++) { + for (var prop in books[i]) { + console.log(prop + ': ' + books[i][prop]) + } +} /* Crie um array chamado `myName`. Cada item desse array deve ser uma letra do seu nome. Adicione seu nome completo no array. */ -// ? +var myName = ['F', 'e', 'l', 'i', 'p', 'e', ' ', 'F', 'r', 'e', 'i', 't', 'a', 's'] console.log( '\nMeu nome é:' ); /* Juntando todos os itens do array, mostre no console seu nome. */ -// ? +console.log(myName.join('')) console.log( '\nMeu nome invertido é:' ); /* Ainda usando o objeto acima, mostre no console seu nome invertido. */ -// ? +console.log(myName.reverse()) console.log( '\nAgora em ordem alfabética:' ); /* Mostre todos os itens do array acima, odenados alfabéticamente. */ -// ? +console.log(myName.sort()) +}()) \ No newline at end of file