Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
149 changes: 95 additions & 54 deletions challenge-15/challenge-15.js
Original file line number Diff line number Diff line change
@@ -1,54 +1,95 @@
/*
Envolva todo o código desse desafio em uma IIFE.
Crie um arquivo chamado index.html e adicione esse script ao HTML.
*/

/*
Crie uma função construtora chamada "Person". Esse construtor deve ter
as seguintes características:
- Deve receber 3 parâmetros: `name`, `lastName` e `age`;
- Deverá ter 3 propriedades:
- `name` - que receberá o valor do parâmetro `name`;
- `lastName` - que receberá o valor do parâmetro `lastName`;
- `age` - que receberá o valor do parâmetro `age`;
- Deverá ter 3 métodos:
- `getFullName` - que deve retornar o nome completo do objeto criado,
no formato:
- "[NAME] [LASTNAME]"
- `getAge` - que deverá retornar a idade (age);
- `addAge` - esse método não deverá ter nenhum parâmetro, mas ao invocá-lo
iremos passar um único argumento, que é a quantidade de anos que devem ser
adicionados à idade original (age). Esse método deverá retornar o objeto
que será instanciado.
*/
// ?

/*
Crie 3 novos objetos usando o construtor acima. Os objetos serão novas
pessoas. As variáveis deverão ser o primeiro nome da pessoa. Passe os
parâmetros corretamente para o construtor para criar as novas pessoas.
Mostre as 3 novas pessoas criadas no console (Um console.log por pessoa).
*/
console.log( 'Novas pessoas criadas à partir de Person:' );
// ?

/*
Mostre no console o nome completo de cada pessoa.
*/
console.log( '\nNomes das pessoas:' );
// ?

/*
Mostre no console as idades de cada pessoa, com a frase:
- "[NOME COMPLETO] tem [IDADE] anos."
*/
console.log( '\nIdade das pessoas:' );
// ?

/*
Adicione alguns anos à cada pessoa, e mostre no console a nova idade de
cada um. A frase deverá ser no formato:
- "[NOME COMPLETO] agora tem [NOVA IDADE] anos."
*/
console.log( '\nNova idade das pessoas:' );
// ?
(function(){

/*
Envolva todo o código desse desafio em uma IIFE.
Crie um arquivo chamado index.html e adicione esse script ao HTML.
*/

/*
Crie uma função construtora chamada "Person". Esse construtor deve ter
as seguintes características:
- Deve receber 3 parâmetros: `name`, `lastName` e `age`;
- Deverá ter 3 propriedades:
- `name` - que receberá o valor do parâmetro `name`;
- `lastName` - que receberá o valor do parâmetro `lastName`;
- `age` - que receberá o valor do parâmetro `age`;
- Deverá ter 3 métodos:
- `getFullName` - que deve retornar o nome completo do objeto criado,
no formato:
- "[NAME] [LASTNAME]"
- `getAge` - que deverá retornar a idade (age);
- `addAge` - esse método não deverá ter nenhum parâmetro, mas ao invocá-lo
iremos passar um único argumento, que é a quantidade de anos que devem ser
adicionados à idade original (age). Esse método deverá retornar o objeto
que será instanciado.
*/
function Person(name, lastName, age){
this.name = name;
this.lastName = lastName;
this.age = age;

this.getFullName = function getFullName(){
return this.name + ' ' + this.lastName;
};

this.getAge = function getAge(){
return this.age
};

this.addAge = function addAge(){
this.age += arguments[0];
return this
};
};

/*
Crie 3 novos objetos usando o construtor acima. Os objetos serão novas
pessoas. As variáveis deverão ser o primeiro nome da pessoa. Passe os
parâmetros corretamente para o construtor para criar as novas pessoas.
Mostre as 3 novas pessoas criadas no console (Um console.log por pessoa).
*/
console.log( 'Novas pessoas criadas à partir de Person:' );
var felipe = new Person('Felipe', 'Freitas', 25);
var bruno = new Person('Bruno', 'Garcia', 26);
var jorge = new Person('Jorge', 'Tigre', 25);

console.log(felipe);
console.log(bruno);
console.log(jorge);

/*
Mostre no console o nome completo de cada pessoa.
*/
console.log( '\nNomes das pessoas:' );
console.log(felipe.getFullName())
console.log(bruno.getFullName())
console.log(jorge.getFullName())

/*
Mostre no console as idades de cada pessoa, com a frase:
- "[NOME COMPLETO] tem [IDADE] anos."
*/
console.log( '\nIdade das pessoas:' );
console.log(felipe.getFullName() + ' tem ' + felipe.getAge() + ' anos.')
console.log(bruno.getFullName() + ' tem ' + bruno.getAge() + ' anos.')
console.log(jorge.getFullName() + ' tem ' + jorge.getAge() + ' anos.')

/*
Adicione alguns anos à cada pessoa, e mostre no console a nova idade de
cada um. A frase deverá ser no formato:
- "[NOME COMPLETO] agora tem [NOVA IDADE] anos."
*/
console.log( '\nNova idade das pessoas:' );
felipe.addAge(4)
bruno.addAge(2)
jorge.addAge(67)

console.log(felipe.getFullName() + ' agora tem ' + felipe.getAge() + ' anos')
console.log(bruno.getFullName() + ' agora tem ' + bruno.getAge() + ' anos')
console.log(jorge.getFullName() + ' agora tem ' + jorge.getAge() + ' anos')

// OU

console.log(felipe.getFullName() + ' agora tem ' + felipe.addAge(2).getAge() + ' anos')

})()
10 changes: 10 additions & 0 deletions challenge-15/index.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<title>Desafio 15</title>
</head>
<body>
<script src="challenge-15.js"></script>
</body>
</html>