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
26
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
38
Vamos Falar Sobre Micro Frontends
neliofrazao
0
160
Vamos falar sobre TDD
neliofrazao
0
19
Other Decks in Technology
See All in Technology
ビギナーであり続ける/beginning
ikuodanaka
3
720
Tokyo_reInforce_2025_recap_iam_access_analyzer
hiashisan
0
180
生まれ変わった AWS Security Hub (Preview) を紹介 #reInforce_osaka / reInforce New Security Hub
masahirokawahara
0
440
OSSのSNSツール「Misskey」をさわってみよう(右下ワイプで私のOSCの20年を振り返ります) / 20250705-osc2025-do
akkiesoft
0
140
生成AI時代 文字コードを学ぶ意義を見出せるか?
hrsued
1
810
使いたいMCPサーバーはWeb APIをラップして自分で作る #QiitaBash
bengo4com
0
1.6k
React開発にStorybookとCopilotを導入して、爆速でUIを編集・確認する方法
yu_kod
1
230
KubeCon + CloudNativeCon Japan 2025 Recap Opening & Choose Your Own Adventureシリーズまとめ
mmmatsuda
0
260
Tech-Verse 2025 Global CTO Session
lycorptech_jp
PRO
0
1.7k
事業成長の裏側:エンジニア組織と開発生産性の進化 / 20250703 Rinto Ikenoue
shift_evolve
PRO
2
19k
Understanding_Thread_Tuning_for_Inference_Servers_of_Deep_Models.pdf
lycorptech_jp
PRO
0
170
PO初心者が考えた ”POらしさ”
nb_rady
0
190
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Statistics for Hackers
jakevdp
799
220k
The Pragmatic Product Professional
lauravandoore
35
6.7k
A designer walks into a library…
pauljervisheath
207
24k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
7
730
Code Review Best Practice
trishagee
69
18k
The Cult of Friendly URLs
andyhume
79
6.5k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Navigating Team Friction
lara
187
15k
Faster Mobile Websites
deanohume
307
31k
Speed Design
sergeychernyshev
32
1k
A Tale of Four Properties
chriscoyier
160
23k
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