$30 off During Our Annual Pro Sale. View Details »
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
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
2
190
さくらのクラウド開発ふりかえり2025
kazeburo
2
780
Connection-based OAuthから学ぶOAuth for AI Agents
flatt_security
0
350
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
400
AI との良い付き合い方を僕らは誰も知らない
asei
0
230
Snowflake導入から1年、LayerXのデータ活用の現在 / One Year into Snowflake: How LayerX Uses Data Today
civitaspo
0
2.3k
Knowledge Work の AI Backend
kworkdev
PRO
0
190
AWSに革命を起こすかもしれない新サービス・アップデートについてのお話
yama3133
0
490
AWSインフルエンサーへの道 / load of AWS Influencer
whisaiyo
0
210
ExpoのインダストリーブースでみたAWSが見せる製造業の未来
hamadakoji
0
190
Strands Agents × インタリーブ思考 で変わるAIエージェント設計 / Strands Agents x Interleaved Thinking AI Agents
takanorig
4
1.9k
[Neurogica] 採用ポジション/ Recruitment Position
neurogica
1
110
Featured
See All Featured
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
51k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Thoughts on Productivity
jonyablonski
73
5k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
66
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
0
62
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
65
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
230
The browser strikes back
jonoalderson
0
120
GraphQLとの向き合い方2022年版
quramy
50
14k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
54k
Making the Leap to Tech Lead
cromwellryan
135
9.7k
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