Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Trabalhando com Arrays e Objetos
Search
Nélio Frazão
April 24, 2020
Technology
0
27
Trabalhando com Arrays e Objetos
Nélio Frazão
April 24, 2020
Tweet
Share
More Decks by Nélio Frazão
See All by Nélio Frazão
Aula de introdução a JS
neliofrazao
0
39
Vamos Falar Sobre Micro Frontends
neliofrazao
0
160
Vamos falar sobre TDD
neliofrazao
0
20
Other Decks in Technology
See All in Technology
Red Hat OpenStack Services on OpenShift
tamemiya
0
110
Agent Skils
dip_tech
PRO
0
110
Tebiki Engineering Team Deck
tebiki
0
24k
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
68k
プロポーザルに込める段取り八分
shoheimitani
1
290
ブロックテーマでサイトをリニューアルした話 / 2026-01-31 Kansai WordPress Meetup
torounit
0
470
レガシー共有バッチ基盤への挑戦 - SREドリブンなリアーキテクチャリングの取り組み
tatsukoni
0
220
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.5k
生成AIを活用した音声文字起こしシステムの2つの構築パターンについて
miu_crescent
PRO
2
210
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
460
Kiro IDEのドキュメントを全部読んだので地味だけどちょっと嬉しい機能を紹介する
khmoryz
0
200
Embedded SREの終わりを設計する 「なんとなく」から計画的な自立支援へ
sansantech
PRO
3
2.5k
Featured
See All Featured
Discover your Explorer Soul
emna__ayadi
2
1.1k
A Soul's Torment
seathinner
5
2.3k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
97
Typedesign – Prime Four
hannesfritz
42
2.9k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
7.9k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
170
What's in a price? How to price your products and services
michaelherold
247
13k
The Invisible Side of Design
smashingmag
302
51k
KATA
mclloyd
PRO
34
15k
Designing for humans not robots
tammielis
254
26k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.6k
Transcript
TRABALHANDO COM ARRAYS E OBJETOS Professor: Nélio Frazão Email:
[email protected]
SOME const maiorQue10 = [ 12 , 5, 8, 1,
4].some(elem => elem > 10 ); console.log(maiorQue10)// true Parâmetro [12, 5, 8, 1, 4] Condição Se TRUE
SOME const maiorQue10 = [ 12 , 5, 8, 1,
15 ].some(elem => elem > 10 ); console.log(maiorQue10)// true Se TRUE TRUE
SOME const maiorQue10 = [ 9, 5, 8, 1, 4
].some(elem => elem > 10 ); console.log(maiorQue10)// false FALSE
EVERY const maiorQue10 = [11, 12, 13, 14, 9 ].every(elem
=> elem > 10 ); console.log(maiorQue10)// false Parâmetro [11, 12, 13, 14, 9] Condição FALSE
EVERY const maiorQue10 = [11, 12, 13, 14, 15 ].every(elem
=> elem > 10 ); console.log(maiorQue10)// true TRUE
INCLUDE const ComidasQueEuGosto = ['Macarrão', 'Lasanha', 'Almôndega', 'Batata Frita'] const
testaGosto = ComidasQueEuGosto.includes('Lasanha') const testaGostoFail = ComidasQueEuGosto.includes('Beterraba') console.log(testaGosto) //true console.log(testaGostoFail ) //false
INCLUDE(Cuidados) const ComidasQueEuGosto = ['Macarrão', 'Lasanha', 'Almôndega', 'Batata Frita'] const
testaGosto = ComidasQueEuGosto.includes('lasanha') console.log(testaGosto) //false
SPREAD OPERATOR const comidasQueEuAprendiAgostar = ['Arroz', 'Feijão']; const comidas =
['Macarrão', 'Lasanha', ...comidasQueEuAprendiAgostar, 'Almôndega', 'Batata Frita']; console.log(comidas); //['Macarrão', 'Lasanha', 'Arroz', 'Feijão', 'Almôndega', 'Batata Frita']
SPREAD OPERATOR(Copiando Arrays) ...Da maneira errada! const comidas = ['Macarrão',
'Lasanha', 'Almôndega', 'Batata Frita']; const novaComida = comidas; novaComida.push('Feijão'); console.log(comidas); //['Macarrão', 'Lasanha', 'Almôndega', 'Batata Frita', 'Feijão'] console.log(novaComida); //['Macarrão', 'Lasanha', 'Almôndega', 'Batata Frita', 'Feijão']
SPREAD OPERATOR(Copiando Arrays) ...Da maneira certa! const comidas = ['Macarrão',
'Lasanha', 'Almôndega', 'Batata Frita']; const novaComida = [...comidas]; novaComida.push('Feijão'); console.log(comidas); //['Macarrão', 'Lasanha', 'Almôndega', 'Batata Frita'] console.log(novaComida); //['Macarrão', 'Lasanha', 'Almôndega', 'Batata Frita', 'Feijão']
SPREAD OPERATOR(Concatenando Arrays) const comidas = ['Macarrão', 'Lasanha']; const novaComida
= ['Almôndega', 'Batata Frita']; const todasAsComidas = [...comidas, ...novaComida] console.log(todasAsComidas); //["Macarrão", "Lasanha", "Almôndega", "Batata Frita"]
TRABALHANDO COM OBJETOS const phoneBook = { nome: 'Nélio', phone:
'9999-8888' }; const keys = Object.keys(phoneBook) console.log(keys) //["nome", "phone"]
TRABALHANDO COM OBJETOS const phoneBook = { nome: 'Nélio', phone:
'9999-8888' }; const values = Object.values(phoneBook) console.log(values) //["Nélio", "9999-8888"]
TRABALHANDO COM OBJETOS const phoneBook = { nome: 'Nélio', phone:
'9999-8888' }; const entries = Object.entries(phoneBook) console.log(entries); // [["nome", "Nélio"], ["phone", "9999-8888"]]
TRABALHANDO COM OBJETOS const phoneBook = { nome: 'Nélio', phone:
'9999-8888' }; const entries = Object.entries(phoneBook) console.log(entries); // [["nome", "Nélio"], ["phone", "9999-8888"]] Key value
FOREACH const pessoas = ['João', 'Fernando', 'Marisa', 'Cláudia'] pessoas.forEach((pessoa, i)
=> { console.log(pessoa, i) //João 0 //Fernando 1 //Marisa 2 //Cláudia 3 });
FOREACH (Juntando forças) const phoneBook = { nome: 'Nélio', phone:
'9999-8888' }; const entries = Object.entries(phoneBook) entries.forEach(phoneItem => { console.log(phoneItem) //["nome", "Nélio"] //["phone", "9999-8888"] });
FOREACH (Juntando forças - Destructuring) const phoneBook = { nome:
'Nélio', phone: '9999-8888' }; const entries = Object.entries(phoneBook) entries.forEach(phoneItem => { const [key, value] = phoneItem console.log(`key:${key} value:${value}`) //[key:nome value:Nélio] //[key:phone value:9999-8888] }); entries.forEach(([key, value]) => { console.log(`key:${key} value:${value}`) //[key:nome value:Nélio] //[key:phone value:9999-8888] });
FOR OF const pessoas = ['João', 'Fernando', 'Marisa', 'Cláudia'] for
(let pessoa of pessoas) { console.log(pessoa); //João //Fernando //Marisa //Cláudia }
FOR IN const pessoa = { nome:'Joâo', sobrenome: 'Silva', idade:30
}; for (const dadosPessoa in pessoa) { console.log(`key=${dadosPessoa} value=${pessoa[dadosPessoa]}`); } //key=nome value=Joâo //key=sobrenome value=Silva //key=idade value=30
ABORDAGEM FUNCIONAL
MAP const data = [ { name: 'Lasanha', kal: 200,
isFit: false, type: 'comida' }, { name: 'Suco de maçã', isFit: true, kal: 10, type: bebida }, ]; const nomeAlimentos = data.map(alimentos => alimentos.name) console.log(nomeAlimentos) //["Lasanha", "Suco de Maçã"]
FILTER const data = [ { name: 'Lasanha', kal: 200,
isFit: false, type: 'comida' }, { name: 'Suco de maçã', isFit: true, kal: 10, type: bebida }, ]; const filter = data.filter(alimentos => alimentos.type === 'bebida') console.log(filter) // {name: "Suco de maçã", isFit: true, kal: 10, type:"bebida"}
FILTER E MAP const data = [ { name: 'Lasanha',
kal: 200, isFit: false, type: 'comida' }, { name: 'Suco de maçã', isFit: true, kal: 10, type: bebida }, ]; const nomeAlimentos = data.filter(alimento => alimento.type==='bebida') .map(alimento => alimento.name) console.log(nomeAlimentos) //["Suco de Maçã"]
REDUCER const data = [ { name: 'Lasanha', kal: 200,
isFit: false, type: 'comida' }, { name: 'Suco de maçã', isFit: true, kal: 10, type: bebida }, ]; const calcKals = data.reduce((acc, alimento) => acc + alimento.kal, 0); console.log(calcKals) //210 Valor cumulado retornado em cada iteração valor Inicial Valor atual do array
OBRIGADO
[email protected]
http:/ /www.linkedin.com/in/neliofrazao