roger-melo-treinamentos / curso-de-js-roger-melo

Repositório de informações do CJRM
491 stars 170 forks source link

Resumo da Aula 02-01 da etapa 09 #5520

Closed acdona closed 2 years ago

acdona commented 2 years ago

Aula 02-01 da etapa 09

Correção dos exercícios 23 da aula 01

/* 01

O trim() remove os espaços em branco no início e fim da string

const myString = '    JS      '
console.log(myString.trim())

/* 02

Primeiro passo é fazer uma cópia do array como o MAP

Depois ordenar com o SORT

const people = [
  { firstName: 'Estevão', lastName: 'Rodriguez', score: 90 },
  { firstName: 'José', lastName: 'Antônio', score: 100 },
  { firstName: 'Felipe', lastName: 'Tavares', score: 71 },
  { firstName: 'Eric', lastName: 'Silva', score: 82 }
]

const peopleOrderByScore = people
  .map(({ firstName, lastName, score }) => ({ firstName, lastName, score}))
  .sort((a, b) => a.score - b.score)
console.log(peopleOrderByScore)

/* 03

/* 04

/* 05

FILTER para selecionar alguns itens e MAP para percorrer todo novo array

const friends = [
  { id: 1, name: 'João', nearMe: true },
  { id: 2, name: 'Matheus', nearMe: true },
  { id: 3, name: 'Luana', nearMe: false },
  { id: 4, name: 'Nilson', nearMe: true },
  { id: 5, name: 'Solange', nearMe: false }
]

const nameOffFriendsNearMe = friends.filter(({ nearMe}) => nearMe)
  .map(({ name }) => name)

/* 06

const sumOffOddNumbers = numbers .filter(number => number % 2) .reduce((acc, oddNumber) => acc += oddNumber, 0)


/*
  07

  - Através do encadeamento de 2 métodos, obtenha a soma da população de todos  
    países, exceto a China.
*/
### FILTER para excluir a China e REDUCE para somar a população
```js
const data = [{
  country: 'China',
  population: 1409517397
}, {
  country: 'India',
  population: 1339180127
}, {
  country: 'USA',
  population: 324459463
}, {
  country: 'Indonesia',
  population: 263991379
}]

const populationSum = data
  .filter(({ country }) => country !== 'China')
  .reduce((acc, { population }) => acc + population, 0)
Roger-Melo commented 2 years ago

Excelente @acdona, rumo à fluência! 🎯