<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Amanda Silva</title>
    <description>The latest articles on Forem by Amanda Silva (@asilva-dev).</description>
    <link>https://forem.com/asilva-dev</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F340335%2Ffa50a84f-382c-41e2-9bee-8140a377a890.png</url>
      <title>Forem: Amanda Silva</title>
      <link>https://forem.com/asilva-dev</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/asilva-dev"/>
    <language>en</language>
    <item>
      <title>Programação funcional...</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Mon, 29 Apr 2024 15:19:28 +0000</pubDate>
      <link>https://forem.com/asilva-dev/programacao-funcional-1kb1</link>
      <guid>https://forem.com/asilva-dev/programacao-funcional-1kb1</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8flolvnzj3kt085vx42r.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8flolvnzj3kt085vx42r.png" alt=" " width="800" height="441"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Na última semana participei do Nubank Engineering Meetup e foi incrível aprender um pouco mais sobre programação funcional com a &lt;a href="https://www.linkedin.com/in/sovelten/" rel="noopener noreferrer"&gt;Sophia Velten&lt;/a&gt; e o &lt;a href="https://www.linkedin.com/in/lanjoni/" rel="noopener noreferrer"&gt;Guto Lanjoni&lt;/a&gt;, foi uma verdadeira imersão no desenvolvimento de software com programação funcional, e eu queria compartilhar alguns insights incríveis que peguei durante o evento.&lt;/p&gt;

&lt;p&gt;Uma das coisas que mais me intrigou foi o papo sobre Linguagem de Domínio Específico (DSL), sabe aquelas linguagens como SQL, HTML ou até mesmo expressões regulares? Elas são excelentes ferramentas para resolver problemas específicos. &lt;br&gt;
Foi compartilhado sobre expressões regulares, que são padrões de texto que podem ser usados para encontrar, substituir ou manipular partes de uma sequência de caracteres. Quando você define uma expressão regular, ela descreve um padrão específico que você deseja encontrar em uma string.&lt;/p&gt;

&lt;p&gt;E quando usar uma DSL? Bom, pense em situações onde você tem um domínio bem definido e vai repetir o código várias vezes. &lt;br&gt;
Aí é onde as DSLs brilham! Linguagens desde Clojure e Lisp até Elixir são usadas para simplificar o desenvolvimento.&lt;/p&gt;

&lt;p&gt;Mas a coisa mais legal que aprendi é como a programação funcional pode se misturar com a orientada a objetos. Ao combinar o melhor dos dois mundos, você consegue criar soluções mais robustas e flexíveis. &lt;/p&gt;

&lt;p&gt;Outra coisa legal discutida foi a relevância da programação funcional no mundo real. Em aplicações onde a manipulação de um número significativo de dados pode ser custosa, a previsibilidade e a falta de surpresas da programação funcional são como ouro. E, claro, isso se aplica muito bem ao desenvolvimento front-end, especialmente com React.&lt;/p&gt;

&lt;p&gt;Resumindo, a palestra na Nubank foi uma verdadeira viagem pelos segredos da programação funcional. Agradeço demais aos palestrantes por compartilharem esses insights incríveis e inspiradores. Quero me aperfeiçoar, continuar explorando e aplicando esses conceitos inovadores no meu próprio trabalho!&lt;/p&gt;

</description>
      <category>nubank</category>
      <category>funcional</category>
      <category>developers</category>
    </item>
    <item>
      <title>Depois do layoff, e a vida, como fica?</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Sat, 11 Mar 2023 15:53:24 +0000</pubDate>
      <link>https://forem.com/asilva-dev/depois-do-layoff-e-a-vida-como-fica-114h</link>
      <guid>https://forem.com/asilva-dev/depois-do-layoff-e-a-vida-como-fica-114h</guid>
      <description>&lt;p&gt;Carta aberta para todas as pessoas atingidas por uma demissão em massa...&lt;/p&gt;

&lt;p&gt;Esse texto marca a minha volta à escrita, com o coração um pouco quebrado, mas com um sentimento que precisa ser externado.&lt;/p&gt;

&lt;p&gt;Quero começar esse texto dizendo que layoff não se trata de uma demissão em massa, segundo o &lt;a href="https://www.guiatrabalhista.com.br/tematicas/layoff-alternativa-para-crises.htm" rel="noopener noreferrer"&gt;Guia trabalhista&lt;/a&gt;, "O termo lay-off, derivado da língua inglesa, nos remete a uma situação de suspensão temporária do contrato de trabalho, seja por falta de recursos financeiros (pagamento de salários), seja por falta de trabalho/atividade que ocupe toda a mão de obra da empresa."&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2fipjr9f6zj78jebq7bh.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2fipjr9f6zj78jebq7bh.gif" alt="Alt Text" width="480" height="366"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h6&gt;
  
  
  Tradução: lamentamos anunciar a seguinte dispensa
&lt;/h6&gt;

&lt;p&gt;Depois de quase 02 anos em uma empresa que foi o meu maior sonho profissional, eu fui uma das pessoas atingidas por uma demissão em massa que afetou mais de 200 pessoas no fatídico 27/02/2023, em uma ligação que durou pouco mais de 3 minutos.&lt;/p&gt;

&lt;p&gt;Não posso ser hipócrita em dizer que não foi uma boa experiência, muito pelo contrário. Durante esse período eu descobri uma potência que existia em mim que só precisava de uma oportunidade para ser lapidada. &lt;/p&gt;

&lt;p&gt;Eu fui escutada todos os dias e minha opinião sempre levada em consideração. Tive apoio de pessoas incríveis, me desenvolvi em práticas de consultoria e tecnicamente. Fui até promovida. Muitas vezes servi de referência para apoiar outras pessoas em suas jornadas, ganhei bastante visibilidade com as participações em eventos da empresa e não preciso nem falar que com certeza foi o ambiente mais diverso e inclusivo que já trabalhei.&lt;/p&gt;

&lt;p&gt;Eu quis tanto estar ali, fazer por merecer aquela oportunidade, não decepcionar ninguém que acreditou em mim e não permitir que nem por um segundo alguém duvidasse da profissional que sou, que durante esse período eu só não percebi uma coisa: Apostei todas as minhas fichas e em algum momento eu me perdi de mim mesma e vesti uma máscara de "preciso ser incrível, preciso ser um impacto extraordinário todos os dias o tempo inteiro".&lt;/p&gt;

&lt;p&gt;Comecei a fazer de tudo além do que eu deveria fazer (e quero salientar que eu não era obrigada, fazia por querer mesmo ou por não saber falar não). Atendia a todas as pessoas e demandas que vinham surgindo cada vez mais, até chegar um momento que eu só estava cansada e no fundo até fiz coisas que eu não gostaria de ter feito, mas sempre sorridente e com muita boa vontade me colocava à disposição de todas, porque eu tinha que ser incrível.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F82zdbqwlhke3x965xq8p.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F82zdbqwlhke3x965xq8p.gif" alt="Alt Text" width="480" height="270"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora eu percebo que já não escrevia mais, já quase não circulava em eventos em outras empresas, e não fazia mais quase nada que não fosse pela minha empregadora, que muito louco isso né, logo eu que sempre amei e fiz de tudo pela comunidade tech de coração aberto e sempre com boa vontade.&lt;/p&gt;

&lt;p&gt;Infelizmente a minha jornada não foi fácil, já estive em ambientes tóxicos onde a síndrome da impostora foi implantada dentro de mim, me fazendo duvidar de mim mesma várias vezes e até pensar em desistir. Então, claro que chegar em uma empresa assim me deixou completamente deslumbrada, vestindo não só a camisa da empresa como a roupa toda.&lt;/p&gt;

&lt;p&gt;Eu sempre achei estranho conhecer pessoas que passaram pela empresa, saíram e não falavam nada sobre, nem bem nem mal, só simplesmente enterravam o assunto. Hoje eu tenho o mesmo sentimento, é a primeira vez que estou falando sobre e pretendo que seja a última, não quero mais falar sobre. &lt;/p&gt;

&lt;p&gt;Eu estou com sentimento de vergonha, ingenuidade, querendo fingir que tudo isso nunca aconteceu e de ter usado tanto a minha imagem para falar sobre a empresa. Hoje as pessoas me perguntam "Ué mas se era tão incrível, te descartaram tão facilmente assim?”, e eu não sei o que dizer, só sinto muita vergonha mesmo. &lt;/p&gt;

&lt;p&gt;Passei (e passo) dias me questionando. O que eu fiz de errado, o que eu poderia ter feito melhor, será que foi um sorteio e eu tive a infelicidade de ser escolhida, será que trabalhar no laboratório de transformação social(laboratório esse que a própria empresa me alocou desde que eu saí da formação afirmativa para pessoas pretas para a qual eu fui recrutada) e não trazer lucros para empresa não pegou bem? Qual foi o critério?&lt;/p&gt;

&lt;p&gt;Depois de receber uma mensagem de conforto de uma pessoa que não foi atingida, seguida de indicações de vagas para trabalhar com recrutamento(what? Fiquei aqui quase 02 anos e as pessoas não sabiam nem o que eu fazia?), só consigo chegar na conclusão que não é e nunca foi sobre mim ou qualquer outra pessoa que foi "eliminada" do jogo. &lt;/p&gt;

&lt;p&gt;O problema não é ser demitida, todos nós estamos sujeitos. O problema é não escutar nem um muito obrigada, e de uma forma desumana sentir um rodo passando por cima de mim como um pano limpa o chão.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffsccw20ix28chc7hahgt.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffsccw20ix28chc7hahgt.gif" alt="Alt Text" width="480" height="270"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E depois do "layoff", a vida como fica? Eu sinceramente não sei. Tive momentos de desespero, medo de ver a quantidade de pessoas que vem chegando no mercado diariamente, medo de rebaixar meu salário que lutei tanto para conquistar, medo de como será o próximo ambiente que irei trabalhar, medo de demorar muito para conseguir uma nova colocação e ter que me submeter à qualquer coisa. &lt;/p&gt;

&lt;p&gt;Não posso afirmar que é um adeus... O desespero é tanto que esses dias cogitei até trabalhar em um local que foi racista comigo, então nunca se sabe o dia de amanhã. &lt;/p&gt;

&lt;p&gt;A única coisa que posso afirmar é que PRECISO aprender a ter os pés no chão e não permitir que a pisciana que habita em mim se deixe levar pelo "sonho" de impactos extraordinários que não são os mesmos que os meus.&lt;/p&gt;

&lt;p&gt;A minha meta é continuar fazendo um trabalho com excelência onde quer que eu passe, toda essa situação não me define, eu sei que sou uma ótima e comprometida profissional e que posso acrescentar muito em qualquer ambiente. &lt;/p&gt;

&lt;p&gt;Para finalizar, como diz o Emicida na música "Levanta e Anda":&lt;/p&gt;

&lt;p&gt;"Irmão, você não percebeu&lt;br&gt;
Que você é o único representante&lt;br&gt;
Do seu sonho na face da terra&lt;br&gt;
Se isso não fizer você correr, chapa&lt;br&gt;
Eu não sei o que vai"&lt;/p&gt;

&lt;p&gt;Agora só resta me encontrar, estudar, traçar um plano em busca de uma boa recolocação, internalizar que vai ficar tudo bem e que na hora certa tudo vai dar certo...&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv1369s78wi75mn9mugu2.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fv1369s78wi75mn9mugu2.gif" alt="Alt Text" width="480" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>Introdução aos Hooks no React</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Mon, 23 Aug 2021 21:12:10 +0000</pubDate>
      <link>https://forem.com/asilva-dev/introducao-aos-hooks-no-react-1oon</link>
      <guid>https://forem.com/asilva-dev/introducao-aos-hooks-no-react-1oon</guid>
      <description>&lt;p&gt;Olha quem voltou, tá passadah? É ela, a Amanda blogueirinha atacando novamente....&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1juosdmc03xlkveu26wt.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1juosdmc03xlkveu26wt.gif" alt="Alt Text" width="480" height="360"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Já tem um tempo que tenho estudado sobre React e estou curtindo bastante a curva de aprendizado. Depois de quebrar bastante a cabeça para entender, vim compartilhar com vocês sobre os Hooks, o que são, onde habitam e do que se alimentam.&lt;/p&gt;

&lt;p&gt;Normalmente quando renderizamos componentes em React, podemos salvar o estado dos mesmos, mas quando se trata de componentes funcionais, podemos usar o State.&lt;br&gt;
Uma maneira que podemos usar o estado(State) e gerenciar esse estado pelo React dentro de funções são com os Hooks, que trata-se de uma biblioteca do React.     &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F689saztq6cgus1mpxm6a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F689saztq6cgus1mpxm6a.png" alt="Alt Text" width="800" height="414"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Um Hook que podemos usar é o UseState. Ao utilizarmos o hook de useState, indicamos para o React que aquele componente precisa guardar um estado. Para isso são devolvidas duas informações: a primeira é a referência para o valor do estado atual e a segunda é a função que altera esse estado. Essa separação precisa ser feita, para que o React consiga fazer o gerenciamento do componente e chamar o ciclo de renderização quando o estado for alterado.&lt;br&gt;
Regras dos Hooks&lt;/p&gt;

&lt;p&gt;Como sabemos, funções não deveriam guardar estados, então podemos usar os Hooks para guardar esses estados dentro de funções com as devidas regras.&lt;br&gt;
Ao utilizar os Hooks, evitamos a reutilização de lógica de estado entre componentes diferentes e confusão de classes.&lt;br&gt;
Os hooks devem sempre ser chamados no primeiro nível da função que está sendo utilizado.&lt;br&gt;
Devemos chamar Hooks de componentes funcionais,  e sempre devem ser chamados dentro de um componente funcional React ou de um Hook customizado.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Hooks na prática&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Agora iremos ver um pouco sobre os Hooks na prática, conhecendo um pouco um deles, que é o useState.&lt;/p&gt;

&lt;p&gt;O useState é um Hook que adiciona o estado de um componente de função, onde definimos o estado inicial de um componente, armazenando em uma variável.&lt;br&gt;
O useState recebe o valor inicial da propriedade state e retorna o valor atual da mesma.&lt;/p&gt;

&lt;p&gt;Para usar o useState, o primeiro passo é importar o mesmo: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4j3as5h70v31zpbexti.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fe4j3as5h70v31zpbexti.png" alt="Alt Text" width="800" height="40"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Como mencionamos anteriormente, vamos declarar uma variável e atribuir um useState para ela :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgjp21jjgzltghr0hk67u.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgjp21jjgzltghr0hk67u.png" alt="Alt Text" width="800" height="116"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A nossa variável chama "endereco", e está recebendo o estado inicial vazio entre aspas.&lt;br&gt;
Futuramente para atualizarmos nosso endereço no código, chamaremos o "setEndereco" &lt;br&gt;
No nosso exemplo, temos um campo input, que recebe o endereço inserido pelo usuário, será através desse campo que iremos usar o nosso setEndereco para atualizarmos o nosso estado:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhkeelh1myy6xaetg18h3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fhkeelh1myy6xaetg18h3.png" alt="Alt Text" width="754" height="444"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No exemplo, recebemos como value(valor) a nossa const declarada endereco, e no método onChange do React, vamos realizar a atualização do nosso estado, chamando o setEndereco e atribuindo para o mesmo o valor que o usuário digitar. &lt;/p&gt;

&lt;p&gt;Exemplo da tela de cadastro, e das informações salvas no console:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foh4p8vrjc8l3xge293uq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Foh4p8vrjc8l3xge293uq.png" alt="Alt Text" width="800" height="522"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Claro que existem diversos outros Hooks que vocês podem encontrar na documentação do React( &lt;a href="https://pt-br.reactjs.org/docs/hooks-overview.html" rel="noopener noreferrer"&gt;https://pt-br.reactjs.org/docs/hooks-overview.html&lt;/a&gt;), mas hoje eu quis trazer uma introdução para vocês verem como é interessante e ficarem instigados a aprenderem mais.&lt;/p&gt;

&lt;p&gt;Por hoje é só, espero que tenham gostado.&lt;br&gt;
Caso tenha algo que eu possa melhorar ou até acrescentar, deixe nos comentários...&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F68lighuaxmxsw215ribb.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F68lighuaxmxsw215ribb.gif" alt="Alt Text" width="245" height="166"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>react</category>
      <category>frontend</category>
      <category>development</category>
      <category>hooks</category>
    </item>
    <item>
      <title>O Superpoderoso Sass</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Thu, 01 Oct 2020 23:59:29 +0000</pubDate>
      <link>https://forem.com/asilva-dev/o-superpoderoso-sass-1e3e</link>
      <guid>https://forem.com/asilva-dev/o-superpoderoso-sass-1e3e</guid>
      <description>&lt;p&gt;Como uma boa desenvolvedora Front End, venho hoje venho falar com vocês sobre uma ferramenta que facilita MUITO as nossas vidas e a nossa produtividade no dia a dia, o superpoderoso Sass.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm9b4g7zlk7laxpoamc6p.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fm9b4g7zlk7laxpoamc6p.gif" alt="Alt Text" width="500" height="334"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Por muitos anos o desenvolvimento FrontEnd se limitou ao HTML, CSS e Javascript, porém com o passar do tempo novas tecnologias e ferramentas vêem surgindo. Esse é o caso dos Pré Processadores de CSS.&lt;br&gt;
Mas Amanda, o que é um pré processador?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/5TC1o3oRE68Mg/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/5TC1o3oRE68Mg/giphy.gif" alt="Alt Text" width="268" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Pré processador é um programa que tem uma entrada, um processamento e uma saída. A entrada recebe de algum programa um código, o processamento interpreta o mesmo e tem como saída o CSS. &lt;br&gt;
Hoje vamos conhecer o pré processador Sass.&lt;br&gt;
Como a própria documentação do Sass diz, o Sass deixa o "CSS with superpowers", por ser rico em recursos, maduro, grande aceitação, presente na comunidade e inúmeros frameworks construídos em Sass.&lt;/p&gt;

&lt;p&gt;Mas vamos ao que interessa, o que o Sass traz de bom?&lt;br&gt;
Nesse artigo vou abordar algumas funcionalidades úteis que podemos fazer com o Sass para deixar o gostinho de quero mais em vocês...&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Variáveis&lt;/strong&gt;&lt;br&gt;
Quando usamos arquivos CSS, muitas vezes precisamos repetir alguns atributos em mais de um seletor:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fshah8u1v18da35vckkrr.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fshah8u1v18da35vckkrr.PNG" alt="Alt Text" width="434" height="272"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No Superpoderoso Sass, podemos atribuir esses valores que se repetem em mais de um lugar à variáveis, que por padrão sempre irão iniciar com o $:&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fboj6kf4udvzi5d43vcx0.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fboj6kf4udvzi5d43vcx0.PNG" alt="Alt Text" width="388" height="54"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Depois de atribuir os valores, podemos simplesmente chamar essas variáveis sempre que for preciso:&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ftotdmb070ar6uii46tys.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ftotdmb070ar6uii46tys.PNG" alt="Alt Text" width="453" height="272"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Mixins&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;E quando ao invés dos atributos, os próprios seletores se repetem pelo código, como a seguir?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fa4p9bkoxb4qdm9x0e3jy.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fa4p9bkoxb4qdm9x0e3jy.PNG" alt="Alt Text" width="294" height="279"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Nesse caso entra em ação uma diretiva chamada Mixin, que pode ter várias regras e argumentos diferentes. Vamos ver como funciona?&lt;br&gt;
Vamos usar a variável que já aprendemos atribuindo um valor, e criar o nosso primeiro mixin:&lt;br&gt;
Para criar um mixin, sempre iremos incluir o @ juntamente com a palavra reservada mixin, definir o nome desse mixin e passar a regra necessária.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F7i33pti43ram9ob526lw.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F7i33pti43ram9ob526lw.PNG" alt="Alt Text" width="328" height="141"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora, para incluir o mixin criado nos nossos seletores, vamos usar o @ junto com a palavra reservada include:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fd4oi75cdkcwdk489kx97.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fd4oi75cdkcwdk489kx97.PNG" alt="Alt Text" width="403" height="284"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Mas e se ao invés de passar o valor de 0.3em para todos os seletores, eu precise colocar algum valor diferente?&lt;br&gt;
Podemos criar mixins passando esses valores por parâmetro. No exemplo a seguir criamos o nosso mixin, passamos uma variável como parâmetro e depois atribuimos na regra essa variável:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fnmznuf34zvfp16w86z4y.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fnmznuf34zvfp16w86z4y.PNG" alt="Alt Text" width="335" height="88"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para incluir esse mixin chamamos o mesmo no nosso seletor, e ao invés de atribuir a variável, podemos ai sim atribuir o valor diferente que desejamos por parâmetro:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Foho4c14h8s6zng5zg9ha.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Foho4c14h8s6zng5zg9ha.PNG" alt="Alt Text" width="408" height="80"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Aninhamentos&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Muitas vezes em nosso CSS, temos algum seletor que tem diferentes regras para diferentes efeitos :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F2t4fewkat2hel2a3tvb1.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F2t4fewkat2hel2a3tvb1.PNG" alt="Alt Text" width="324" height="390"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Uma facilidade que o Sass oferece é criar esses seletores e chamar dentro do mesmo as regras necessárias, facilitando a manutenção do código quando trabalhamos com seletores:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fq1po3plljqw3j3v4yvfd.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fq1po3plljqw3j3v4yvfd.PNG" alt="Alt Text" width="387" height="422"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Uma boa prática é não ultrapassar três ou quatro itens em cada seletor.&lt;/p&gt;

&lt;p&gt;É claro que eu não mostrei nem 10% do poder do Sass, hoje a intenção foi mostrar uma prévia e despertar a curiosidade em você, e se quiser conhecer mais sobre o Sass, super vale a pena xeretar na documentação:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://sass-lang.com/" rel="noopener noreferrer"&gt;https://sass-lang.com/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Falando de conteúdos Free, no Youtube tem uma playlist maneira para você aprender também:&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/XwPSWKnZIg4"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Por hoje é só, gostou? Tem algum ponto a acrescentar ou até corrigir? Deixa o seu recadinho...&lt;br&gt;
Até o próximo artigo !!!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://i.giphy.com/media/fWgAW7WZtPMBjmpa3V/giphy.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://i.giphy.com/media/fWgAW7WZtPMBjmpa3V/giphy.gif" alt="Alt Text" width="300" height="298"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>css</category>
      <category>design</category>
    </item>
    <item>
      <title>Functions em JS</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Thu, 27 Aug 2020 03:49:11 +0000</pubDate>
      <link>https://forem.com/asilva-dev/functions-em-js-cc6</link>
      <guid>https://forem.com/asilva-dev/functions-em-js-cc6</guid>
      <description>&lt;p&gt;Oi sumidos, olha eu de volta depois de um tempo praticando a "Solitude"(Quem nunca hahaha) resolvi voltar com tudo trazendo um artigo quentinho sobre javascript.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fkjzym4h8c5q4m4woml46.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fkjzym4h8c5q4m4woml46.gif" alt="Alt Text" width="480" height="131"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Dessa vez vamos falar de Functions, as famosas funções em javascript. Vamos aprender o que são, onde vivem e do que se alimentam.&lt;/p&gt;

&lt;p&gt;Na orientação a objetos podemos chamar as funções de métodos que consistem em um objeto que traz um código executável podendo conter parâmetros. &lt;br&gt;
Todas as definições que implementamos dentro de uma função não conseguem ser acessadas fora dessa função, ou seja, fora do escopo.&lt;/p&gt;

&lt;p&gt;Vamos declarar uma função na prática e ver como funciona:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fphhsdtyvxmk7xo90dzrd.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fphhsdtyvxmk7xo90dzrd.PNG" alt="Alt Text" width="385" height="83"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Temos uma função que foi declarada com a palavra reservada que é própria do javascript &lt;strong&gt;function&lt;/strong&gt; e atribuímos a ela o nome de &lt;strong&gt;myFunction&lt;/strong&gt;. &lt;br&gt;
Dentro dos parenteses() atribuimos um argumento que usaremos no escopo(Escopo é o 'Corpo' da função, guardem esse segredinho),&lt;br&gt;
e dentro da nossa função, chamamos retorno do nosso argumento passado por parâmetro. &lt;br&gt;
Então, ao executarmos a nossa função, teremos o seguinte resultado:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fjcegcblpdm30f4egpb9m.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fjcegcblpdm30f4egpb9m.PNG" alt="Alt Text" width="277" height="62"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Qualquer argumento que passarmos no parâmetro será retornado na função&lt;/p&gt;

&lt;p&gt;Vamos praticar mais um pouquinho, agora com uma operação?&lt;br&gt;
Dentro de uma função podemos executar operações, condições, exibir contextos e mais uma infinidade de possibilidades. No exemplo a seguir vamos fazer uma operação:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fhg2czciwys9fa50d18xu.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fhg2czciwys9fa50d18xu.PNG" alt="Alt Text" width="461" height="82"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Na função criada chamada soma, passamos duas variaveís como parâmetro e no retorno realizamos a soma desses parâmetros. Podemos realizar diversas operações dentro de uma função, soma, multiplicação, divisão, subtração, verificações condicionais e por ai vai. &lt;br&gt;
Ao executar nossa função o usuário deve passar dois números no parâmetro. Ao chamá-la teremos o seguinte resultado:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbfpoajq95qp8eecju2yp.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbfpoajq95qp8eecju2yp.PNG" alt="Alt Text" width="181" height="56"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E ai curtiu? Tente praticar agora um pouquinho, bora colocar a mão na massa e testar com diversas formas e depois volte aqui para aprender mais um pouquinho hehe!!!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F05i6oc02omcz27iognsj.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F05i6oc02omcz27iognsj.gif" alt="Alt Text" width="487" height="371"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Arrow Functions&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Funções do tipo Arrow Function surgiram com o ES6 e vieram para economizar tempo dos desenvolvedores e simplificar o escopo da função. Estas expressões de funções são melhor aplicadas para funções que não sejam métodos, e elas não podem ser usadas como construtoras (constructor).&lt;br&gt;
As funções arrow functions tem return implícito, ou seja, se a sua função for simples, basta terminá-la com com o retorno esperado, como no exemplo a seguir: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fu0a5up2jv5850k6zc887.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fu0a5up2jv5850k6zc887.PNG" alt="Alt Text" width="572" height="47"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Caso a sua função seja mais extensa, com maiores especifições, ai sim você pode chamar o return:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F3mlwenxzuih54rngsgqr.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F3mlwenxzuih54rngsgqr.PNG" alt="Alt Text" width="480" height="135"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Filter, Map e Reduce&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Funções do tipo Filter, Map e reduce nos permitem executar operações sem alterar nossos objetos / arrays, de acordo com as nossas necessidades de forma limpa e organizada. Vamos conhecê-las:&lt;br&gt;
Para implementar nossas funções, vamos criar um objeto: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F6nis3ivmdr8g65mzziva.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F6nis3ivmdr8g65mzziva.PNG" alt="Alt Text" width="265" height="572"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h5&gt;
  
  
  Filter:
&lt;/h5&gt;

&lt;p&gt;A função do tipo &lt;em&gt;Filter&lt;/em&gt; tem nada menos que o papel de filtrar, ou seja, gerar um retorno de acordo com a condição passada.&lt;br&gt;
Vamos criar uma const chamando o nosso objeto e com a função filter vamos retornar a apenas os homens do objeto pessoas:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fk1vogh7uj5c9h10ktq6g.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fk1vogh7uj5c9h10ktq6g.PNG" alt="Alt Text" width="800" height="95"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Ao executar  nosso código, o retorno será esse:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F5wjgyyuz2esbs26yro57.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F5wjgyyuz2esbs26yro57.PNG" alt="Alt Text" width="583" height="186"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h5&gt;
  
  
  Map:
&lt;/h5&gt;

&lt;p&gt;A função do tipo &lt;em&gt;Map&lt;/em&gt; posibilita a criação de um novo objeto com base no já existente: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fwwfhmr0ov0j0lzq5le6y.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fwwfhmr0ov0j0lzq5le6y.PNG" alt="Alt Text" width="731" height="193"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Executando, esse será o retorno com o curso acrescentado no objeto:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fl7tjr3bbttcudu6bghzj.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fl7tjr3bbttcudu6bghzj.PNG" alt="Alt Text" width="800" height="129"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h5&gt;
  
  
  Reduce:
&lt;/h5&gt;

&lt;p&gt;Entre as funções &lt;em&gt;Filter&lt;/em&gt;, o &lt;em&gt;Map, o _Reduce&lt;/em&gt; é a função que exige maior atenção devido a sua complexidade. O &lt;em&gt;Reduce&lt;/em&gt; nos permite realizar transformar o tipo do nosso objeto.&lt;br&gt;
No exemplo, vamos somar as idades de todoas pessoas do objeto com o &lt;em&gt;Reduce&lt;/em&gt;. &lt;br&gt;
O primeiro parâmetro &lt;strong&gt;age&lt;/strong&gt; é a variável que irá armazenar a nossa soma, ou seja o valor que o totalIdades terá. O parâmetro person representa o item que estamos iterando dentro do nosso objeto. Todo esse escopo é o primeira parâmetro que carrega o escopo do nosso totalIdades, que chama a propriedade idade de dentro do nosso objeto e realiza a soma ao passar por cada item e depois retorna o valor da propriedade. O segundo parâmetro zero, é o valor inicial : &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fd78s67j4xqdcqzjg7udp.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fd78s67j4xqdcqzjg7udp.PNG" alt="Alt Text" width="783" height="204"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Esse será o nosso resultado:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fpkuiq1w4ioqxlyjcozgi.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fpkuiq1w4ioqxlyjcozgi.PNG" alt="Alt Text" width="449" height="44"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Alguns anos atrás eu vi a melhor definição ilustrada do &lt;em&gt;Filter&lt;/em&gt; &lt;em&gt;Map&lt;/em&gt; e &lt;em&gt;Reduce&lt;/em&gt; no &lt;a href="http://www.globalnerdy.com/2016/06/23/map-filter-and-reduce-explained-using-emoji/" rel="noopener noreferrer"&gt;Global Nerd&lt;/a&gt;, olhem só que bacana: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fg1v2iqbxqos7htb6qg1s.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fg1v2iqbxqos7htb6qg1s.png" alt="Alt Text" width="800" height="602"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Se você chegou até aqui, P-A-R-A-B-É-N-S, aprendemos juntos o monte de coisas legais que podemos fazer com as funções. Espero que tenham gostado. Tem algo que quer acrescentar, ou até corrigir? É só deixar seu recadinho. Até breve...&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F82ileiwjuif05fuurk6r.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F82ileiwjuif05fuurk6r.gif" alt="Alt Text" width="480" height="270"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
      <category>womenintech</category>
    </item>
    <item>
      <title>Tech e Girl? SIM, É POSSÍVEL, Vem você migrar também!!!</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Sun, 08 Mar 2020 03:37:30 +0000</pubDate>
      <link>https://forem.com/asilva-dev/tech-e-girl-sim-e-possivel-vem-voce-migrar-tambem-4od0</link>
      <guid>https://forem.com/asilva-dev/tech-e-girl-sim-e-possivel-vem-voce-migrar-tambem-4od0</guid>
      <description>&lt;p&gt;Seguindo com os artigos semanais, hoje excepcionalmente eu resolvi sair do lado tech e falar para todas as mulheres em homenagem ao nosso dia.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Frfi2fdjidzzyskjztgcd.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Frfi2fdjidzzyskjztgcd.gif" alt="Alt Text" width="480" height="480"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Desde 07/2017 eu tenho participado de comunidades femininas que abordam várias tecnologias, temáticas e áreas e posso dizer com propriedade que foi crucial para me empoderar, me moldar como mulher, me impor e fazer por onde eu estar e ocupar os espaços que me cabem. Mas acredito que a minha maior dor é ver que existem muitas mulheres com potêncial, mulheres que admiro, mulheres que são Fo*@#a e que muitas vezes não estão na mesma força. &lt;br&gt;
Muitas vezes me perguntam dicas de carreira, de migração de área e por onde começar, então hoje resolvi hoje compartilhar com vocês um pouquinho.&lt;/p&gt;

&lt;p&gt;Vamos lá, o primeiro passo para você migrar de área é definir o que você mais gosta e se identifica. Realmente a tecnologia é uma sopa de letrinhas super abrangente, é FrontEnd, UX, Scrum Master, Devops, Infra, Cloud, BackEnd, PO, Cientista de Dados, Marketing Digital, Software Engineer, ufa M-E-U Deus Amanda, o que eu faço? &lt;br&gt;
De princípio eu também fiquei perdidaça, me lembro que em uma das primeiras entrevistas que fiz na área quando estava no primeiro semestre, o gestor perguntou "Você gosta de desenvolvimento ou gestão", fiquei "Meu Deus o que será que faz no desenvolvimento?"(Sim, eu não sabia o que era desenvolvimento)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbl45p5qwueme9on5i2eu.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbl45p5qwueme9on5i2eu.gif" alt="Alt Text" width="275" height="206"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para mim o que funcionou foi conhecer na prática um pouquinho de cada área até me encontrar. Eu comecei a participar insanamente de todas comunidades e eventos possíveis, até que fazendo um hands on(eventos aonde a gente coloca a mão na massa)aqui, outro ali, que descobri o desenvolvimento(que ironia né haha) e foi amor a primeira vista.&lt;br&gt;
Quando eu digo na prática, não precisa necessáriamente estar presente em todos os rolês, mil MeetUps por mês(sério, tem horas que se não colocarmos limites em nós mesmas, começa a ficar insano, não façam isso, se cuidem girls). O ideal é agir de acordo com as suas condições fisícas e mentais ok.&lt;/p&gt;

&lt;p&gt;Aonde eu encontro esses conteúdos Amanda? A recomendação é se infiltrar e fazer uma pesquisa de grupos, páginas, comunidades dos temas que vocês mais se identifiquem (Lembrem que o que eu gosto, pode não ser o que você gosta e vice e versa) e comecem acompanhar, participem sempre que possível, interajam com as pessoas e formem laços. &lt;br&gt;
Uma amiga muito querida, a &lt;a href="https://www.linkedin.com/in/melanie-miranda/" rel="noopener noreferrer"&gt;Melania Miranda&lt;/a&gt; criou o Lista das Minas com várias comunidades que ela identificou e vem alimentando (Valeu Mel, te amo um montão), vale a pena dar uma conferida:&lt;br&gt;
&lt;a href="https://listadasminas.meninah.dev" rel="noopener noreferrer"&gt;https://listadasminas.meninah.dev&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Tá ok, agora estou andando com a galera, já tenho um caminho que quero seguir, o que eu faço?&lt;/p&gt;

&lt;p&gt;Estudar, estudar, estudar e estudar...&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fad5fw8swpkh3ynuspjnd.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fad5fw8swpkh3ynuspjnd.jpg" alt="Alt Text" width="626" height="626"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Infelizmente, alguns lugares ainda exigem ensino superior, mas eu observo que grandes instituições vem deixando cair por terra esse conceito e abrindo muitas portas para o pessoal de Tech. Hoje já temos muitas iniciativas gratuitas para mulheres, como Bootcamps, acelerações, academias que muitas vezes geram grande empregabilidade para as alunas. Seguem algumas iniciativas:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://minasprogramam.com/" rel="noopener noreferrer"&gt;https://minasprogramam.com/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://digitalinnovation.one/" rel="noopener noreferrer"&gt;https://digitalinnovation.one/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://www.reprograma.com.br/" rel="noopener noreferrer"&gt;https://www.reprograma.com.br/&lt;/a&gt;&lt;br&gt;
&lt;a href="https://womakerscode.org/" rel="noopener noreferrer"&gt;https://womakerscode.org/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bom e agora que eu já me achei, já estou estudando, é hora de colocar a cara no sol e aparecer para o mundo, porque quem não é visto não é lembrado.&lt;/p&gt;

&lt;p&gt;O primeiro passo é deixarmos o nosso linkedin legal. Uma dica de ouro é não colocar em hipótese alguma na descrição do perfil "Em busca de uma oportunidade" ou coisa similar. Nessa parte é legal colocarmos o que fazemos(por mais que você ainda esteja estudando, não tem problema, coloque o que você estuda). Se você é desenvolvedora front, coloque. Se é Scrum Master, coloque também. Deixe visivel para as empresas qual a sua experiência, existe um mecanismo no linkedin para recrutadores que permite que eles localizem perfis por palavras chave, então por isso é importante deixar essas informações em destaque.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffxwqim7e5fl5fc0alixp.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffxwqim7e5fl5fc0alixp.PNG" alt="Alt Text" width="696" height="362"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Coloquem todas suas habilidades, conquistas, trabalhos, certificados, e sim, até aquele do curso que você fez online, é importante para você.&lt;/p&gt;

&lt;p&gt;Agora com o perfil ok, comece a seguir empresas que você gostaria de trabalhar e faça conexões com pessoas dessas empresas, acompanhem o que essas empresas vem trazendo de conteúdo e sempre que possível interajam. Observem as vagas que essas empresas publicam e vejam os requisitos das mesmas, é uma boa para se preprar quando forem se aplicar.&lt;br&gt;
Não tenham medo de se canditar à uma vaga, por mais que vocês não atendam 100% dos requisitos. É comprovado que em uma vaga de emprego que pede dez requisitos, se um homem atender pelo menos três ele se candidata(e muitas vezes passa), agora nós mulheres muitas vezes somos impostoras com nós mesmas e se não soubermos os dez, nem tentamos. Porque isso? Então sempre pensem, o não a gente já tem e se não soubermos os dez, só precisamos de uma chance, depois que tivermos lá iremos dar o nosso melhor e aprender o restante, então vamos ser ousadas.&lt;/p&gt;

&lt;p&gt;Busque por pessoas que são referência na área que almejamos trabalhar e façam conexão também, elas sempre vão trazer conteúdos que vão agregar para a gente em algum momento.&lt;/p&gt;

&lt;p&gt;Poxa Amanda, mas mesmo com tudo isso eu ainda não tenho experiência, e agora?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Flrdjkkm95kzie9g6a5i0.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Flrdjkkm95kzie9g6a5i0.gif" alt="Alt Text" width="500" height="270"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Uma ótima comprovação da sua experiência é o seu Github(Não manja de git? Segue um curso gratuito para você aprender &lt;a href="https://www.udemy.com/course/git-e-github-para-iniciantes/" rel="noopener noreferrer"&gt;https://www.udemy.com/course/git-e-github-para-iniciantes/&lt;/a&gt;). Coloquem todos os seus projetos, até aquele simples Hello Word que você fez.&lt;br&gt;
Uma outra maneira muito bem vista pelas empresas de experiência, é fazer voluntariado, o que não deixa de ser um trabalho no qual você colocou a mão na massa. &lt;br&gt;
Existe um site bem maneiro que você pode buscar causas para ajudar e praticar seu trabalho:&lt;br&gt;
&lt;a href="https://www.atados.com.br/" rel="noopener noreferrer"&gt;https://www.atados.com.br/&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Algumas comunidades sempre pedem apoio na monitoria dos eventos aonde nessa monitoria, você vai ajudar uma pessoa que está começando também com as dúvidas. O mais legal é que você não precisa ser uma expert no assunto, e pode ter dúvidas durante a monitoria também, e não tem problema nenhum porque alguma outra monitora sem dúvidas irá de ajudar.&lt;br&gt;
Lembre-se também de colocar todas os voluntariados no seu linkedin.&lt;/p&gt;

&lt;p&gt;Estudos ok, linkedIn ok, experiência ok? Bora trabalhar e acabar a escassez&lt;br&gt;
(eu sei vai, foi ridicula essa rima mas eu fiz mesmo, tô nem ai kkkkkk)&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F9zkee8tnahnjt0zne18h.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F9zkee8tnahnjt0zne18h.gif" alt="Alt Text" width="480" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;A gente sabe que por sermos mulheres, enfrentamos muitas situações que nos fazem pensar em desistir, nos fazem sentir que somos menos, temos muitas vezes a sensação de não pertencer, "Ah isso não é para mim", "Ah eu sou uma farça, em algum momento vão descobrir que eu não sei nada", nos auto sabotamos inúmeras vezes. É importante entender que cada uma de nós temos o nosso tempo, o nosso tipo de aprendizado, não somos iguais umas as outras, mas não devemos nos punir por isso.&lt;br&gt;
Vibre a cada conquista, a cada novo aprendizado, compartilhe sempre que puder(sério, isso faz muito bem para nós mesmas), J-A-M-A-I-S diminua suas habilidades e sempre reconheça e admita o seu sucesso. Fez alguma coisa bacana? Fale de boca cheia "Esse é o meu trabalho", "Eu que fiz isso", não tenha vergonha e nem pense que "está se achando", você está mostrando o quanto é maravilhosa e esforçada.&lt;/p&gt;

&lt;p&gt;No mês de maio, em parceiria com o &lt;a href="https://www.linkedin.com/company/afropython-sp/" rel="noopener noreferrer"&gt;Afropython SP&lt;/a&gt;, participei de uma live com a querida &lt;a href="https://www.linkedin.com/in/darlinpaula/" rel="noopener noreferrer"&gt;Darlin Paula&lt;/a&gt; aonde abordamos transição de carreira com tópicos desse artigo e inteligência emocional, se você leu até aqui, vale a pena conferir:&lt;/p&gt;

&lt;p&gt;&lt;iframe width="710" height="399" src="https://www.youtube.com/embed/p3FNAI4QZ_Y"&gt;
&lt;/iframe&gt;
&lt;/p&gt;

&lt;p&gt;Por fim, sempre que possível cuide da sua saúde mental, faça terapia, tenha hobbies, cuide do corpo, da alma porque se você não estiver bem consigo mesma, será muito mais dificl embarcar nessa jornada. E se der medo? Vai com medo mesmo!&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fiykvmnrg0gji5dsarwar.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fiykvmnrg0gji5dsarwar.gif" alt="Alt Text" width="480" height="270"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>career</category>
      <category>womenintech</category>
      <category>developer</category>
    </item>
    <item>
      <title>Variáveis tipo Symbol</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Wed, 04 Mar 2020 02:21:43 +0000</pubDate>
      <link>https://forem.com/asilva-dev/variaveis-tipo-symbol-19ap</link>
      <guid>https://forem.com/asilva-dev/variaveis-tipo-symbol-19ap</guid>
      <description>&lt;p&gt;Olá galerinha, e vamos lá seguir para mais um aprendizado.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fjbtce15xx1cnj2nl7umc.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fjbtce15xx1cnj2nl7umc.gif" alt="Alt Text" width="220" height="220"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Seguindo a linha de variáveis, vamos dessa vez falar do nosso último tipo que é o Symbol.&lt;br&gt;
O Symbol se enquadra em tipos de variáveis, mas também pode ser visto como uma função ou até mesmo uma classe.&lt;br&gt;
Todas as instâncias de uma variável do tipo Symbol são únicas e não podem ser alteradas.&lt;br&gt;
Bora lá colocar a mão na massa!!!&lt;br&gt;
Vamos declarar duas variáveis e definir o tipo delas como Symbol:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fcu8afqhjmdwyv5c6vbqi.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fcu8afqhjmdwyv5c6vbqi.PNG" alt="Alt Text" width="373" height="98"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Observem que o tipo Symbol deve ter () no final, o que diz que esse tipo de variável trata-se de uma espécie de função.&lt;/p&gt;

&lt;p&gt;Como eu já havia dito, variáveis do tipo symbol são unicas, então vamos fazer uma comparação das nossas duas variáveis e ver o retorno:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F4ftrgyxnqdnmn7rp8ssd.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F4ftrgyxnqdnmn7rp8ssd.PNG" alt="Alt Text" width="800" height="48"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;É possível passar parâmetros para uma variável Symbol e posteriormente atribuir valores a essas variáveis em objetos:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F4a7ohsih8d4lnr8ud3ao.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F4a7ohsih8d4lnr8ud3ao.PNG" alt="Alt Text" width="491" height="101"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;No exemplo a seguir, temos um objeto chamado pessoas e como atributos vamos passar as duas variávei já criadas, e atribuir um valor a elas também:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F3zf1n8ny1wyh0c3ya8qt.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F3zf1n8ny1wyh0c3ya8qt.PNG" alt="Alt Text" width="380" height="106"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Observe que também inserimos como um dos atributos uma variável string. Qual será o resultado se agora o objeto pessoa for imprimido? &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffkkqola7rrch2dn2lf4x.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffkkqola7rrch2dn2lf4x.PNG" alt="Alt Text" width="380" height="106"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bom agora encerramos os tipos de variáveis com o Symbol, aguardem os próximos artigos que iremos aprofundando aos poucos ok. &lt;br&gt;
Espero que estejam gostanto e se tem alguma coisa que posso melhorar, alguma dica para acrescentar, é só deixar seu recadinho. Até mais galera &amp;lt;3&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fk93awwb5nkrhfegtgokw.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fk93awwb5nkrhfegtgokw.gif" alt="Alt Text" width="500" height="500"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
    </item>
    <item>
      <title>Variáveis do tipo Object em javascript</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Tue, 25 Feb 2020 16:43:28 +0000</pubDate>
      <link>https://forem.com/asilva-dev/variaveis-do-tipo-object-em-javascript-4447</link>
      <guid>https://forem.com/asilva-dev/variaveis-do-tipo-object-em-javascript-4447</guid>
      <description>&lt;p&gt;Estamos de volta, agora falando do tipo de variável, o Object.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F1m3uxx6cxdoqbt6rzuwk.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F1m3uxx6cxdoqbt6rzuwk.gif" alt="Alt Text" width="399" height="307"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O object é uma coleção de dados que permite o registro de atributos e propriedades que tem algum tipo de relacionamento entre si.&lt;/p&gt;

&lt;p&gt;Vamos declarar nosso primeiro objeto chamado pessoas:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F1hsvk91142n9uey4q6uz.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F1hsvk91142n9uey4q6uz.PNG" alt="Alt Text" width="314" height="142"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Como os outros tipos de variáveis que já vimos, podemos manipular os objects também.&lt;br&gt;
Podemos alterar alguma dos atributo de dentro do objeto. Vamos chamar nosso objeto e checar a atributo name: &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F1dq1edeajdgxvl551z58.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F1dq1edeajdgxvl551z58.PNG" alt="Alt Text" width="437" height="103"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para atribuir um novo valor ao atributo 'name' do nosso objeto podemos chamar o nosso objeto 'pessoa' e instânciar ao atributo nome(para instanciar devemos digitar o nome do nosso objeto 'pessoa' e colocar um '.' seguido do atributo) e atribuir um novo valor:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Forqwk8wswnhijlbpzmy4.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Forqwk8wswnhijlbpzmy4.PNG" alt="Alt Text" width="380" height="153"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Existe um outro meio de trocamos o valor do atributo, seguindo a estrutura de Array(veremos o que é um array futuramente ok):&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fglweuopbfzllxgighagg.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fglweuopbfzllxgighagg.PNG" alt="Alt Text" width="381" height="98"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Podemos criar uma nova variável que recebe o atributo 'name':&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F0c1cxz6ciudgmsu8163j.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F0c1cxz6ciudgmsu8163j.PNG" alt="Alt Text" width="800" height="400"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;e alterar o nome através dessa nova variável que criamos também:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F5trqteci4gy9ozwrdios.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F5trqteci4gy9ozwrdios.PNG" alt="Alt Text" width="383" height="102"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E se eu quiser acrescentar mais um atributo no nosso objeto, é possível?&lt;br&gt;
Sim sim, basta chamarmos  nosso objeto e já instanciar nosso novo atributo, é bem simples:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffh0kvc0s5jw4bq2i8n64.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffh0kvc0s5jw4bq2i8n64.PNG" alt="Alt Text" width="607" height="101"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Amanda, e se eu quiser excluir um atributo, será que eu consigo? Anhãn, vamos ver como é?&lt;br&gt;
De princípio nosso objeto tem os atributos name, idade e lastName. Vamos deletar o atributo idade ok? &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F75p0rystpcnapfj2sviz.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F75p0rystpcnapfj2sviz.PNG" alt="Alt Text" width="616" height="154"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Funções em Object&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Agora vamos ver as possíveis funções existentes do object.&lt;/p&gt;

&lt;p&gt;A função 'keys' permite que sejam exibidas todas os atributos do nosso objeto. Vamos utilizar o console.log para exibir nossa função:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbvyx6ty1gg1gghg46gz4.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbvyx6ty1gg1gghg46gz4.PNG" alt="Alt Text" width="800" height="38"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E se eu quiser exibir os atributos e seus conteúdos? Usamos a função 'entries':&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffkbaruhl51ma5o2hzpuy.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ffkbaruhl51ma5o2hzpuy.PNG" alt="Alt Text" width="800" height="36"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Podemos inserir outro atributo e já imprimir o objeto completo com a função Object.assign:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fb5amko888mlylrf4kt6h.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fb5amko888mlylrf4kt6h.PNG" alt="Alt Text" width="800" height="55"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Existe uma função que se chama freeze, que literalmente congela o objeto.&lt;br&gt;
Vamos declarar um novo objeto e chamar o freeze:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F337gdkawfx1v4zi4353b.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F337gdkawfx1v4zi4353b.PNG" alt="Alt Text" width="412" height="149"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora o atributo name está congelado com o nome 'Lívia'. Vamos tentar realizar algumas alterações no objeto e ver o que acontece chamando o mesmo após essas manipulações:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fo44kliptlob7i0n3aehm.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fo44kliptlob7i0n3aehm.PNG" alt="Alt Text" width="412" height="149"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Como você pode ver, não acontece nada com o nosso objeto, porque chamamos o Object.freeze e 'congelamos' o mesmo.&lt;br&gt;
Para finalizar, vamos falar da função 'seal'. A função seal também 'congela' o objeto, mas em partes.&lt;br&gt;
Vamos declarar mais um objeto pessoa e chamar a função Object.seal:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ft5n08dzxgjl8owfvxi41.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Ft5n08dzxgjl8owfvxi41.PNG" alt="Alt Text" width="401" height="294"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora vamos executar algumas manipulações com esse objeto e ver o que acontece:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fqwxj3b0qn4wz3p263ol8.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fqwxj3b0qn4wz3p263ol8.PNG" alt="Alt Text" width="437" height="154"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Observe que ao tentar deletar, o retorno foi false, o que significa que nós conseguimos alterar o atributo nome, mas não conseguimos exlcuir. É isso que o 'seal' faz, pega nosso objeto e só permite alterações nos atributos já existentes.&lt;br&gt;
Vamos tentar inserir mais um atributo no nosso objeto:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fhpbpfazlmwqyc29z7inx.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fhpbpfazlmwqyc29z7inx.PNG" alt="Alt Text" width="732" height="150"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Viu, não acontece nada. Tentamos inserir o atributo idade, mas nosso objeto está congelado parcialmente com a função 'seal' e não poermitiu essa inserção.&lt;/p&gt;

&lt;p&gt;Bom por hoje é só, espero que estejam gostando. Tem algo que quer acrescentar, ou até corrigir? É só deixar seu recadinho. Até mais...&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F2o72r0dt20immyhsf3as.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F2o72r0dt20immyhsf3as.gif" alt="Alt Text" width="370" height="208"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
    </item>
    <item>
      <title>Variáveis do tipo number, null, undefined e boolean</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Sun, 23 Feb 2020 21:32:24 +0000</pubDate>
      <link>https://forem.com/asilva-dev/variaveis-do-tipo-number-null-undefined-e-boolean-gj4</link>
      <guid>https://forem.com/asilva-dev/variaveis-do-tipo-number-null-undefined-e-boolean-gj4</guid>
      <description>&lt;p&gt;Continuando com os artigos sobre os tipos de variáveis do javaScript, nesse iremos falar sobre os tipos numéricos, null, undefined e boolean.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fraut15obk154ayqo3ntz.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fraut15obk154ayqo3ntz.gif" alt="Alt Text" width="236" height="181"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Number&lt;/strong&gt;&lt;br&gt;
O primeiro passo é declarar uma variável numérica. Para uma variável ser tipada como number, o conteúdo da mesma não deve estar entre ''(aspas simples). &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Furxrhttdo11djhz5sbsm.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Furxrhttdo11djhz5sbsm.PNG" alt="Alt Text" width="387" height="46"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As variáveis númericas também tem propriedades que permitem que sejam manipuladas conforme a necessidade do código.&lt;/p&gt;

&lt;p&gt;A primeira propriedade que iremos aplicar é a toString(). O toString tem o poder de transformar uma variável numérica em string :&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fzw2lhdgt6qri7slxq66d.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fzw2lhdgt6qri7slxq66d.PNG" alt="Alt Text" width="800" height="197"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;O atributo typeof utilizado, trata-se de um operador unário usado antes da variavel que determina o tipo da mesma.&lt;/p&gt;

&lt;p&gt;É possível determinar o número de casas decimais com o propriedade toFixed, chamando a variável e passando por parâmetro na propriedade a quantidade de casas que queremos:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F5ut8ccqk7ril48m0aqu6.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F5ut8ccqk7ril48m0aqu6.jpg" alt="Alt Text" width="800" height="214"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Podemos pegar a uma variável que é string e transformá-la em float com a propriedade parseFloat:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fmw5rcjciachi6er97b2d.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fmw5rcjciachi6er97b2d.jpg" alt="Alt Text" width="800" height="174"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Podemos pegar uma variável float e transformar em Int também com o parseInt:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F4zbbp4j5ljmrt3zsgn6b.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F4zbbp4j5ljmrt3zsgn6b.jpg" alt="Alt Text" width="800" height="191"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Null e Undefined&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Uma variável declarada usando a declaração var ou let sem especificar o valor inicial tem o valor  undefined:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fc0gep4q2q2m6ip9qd4uj.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fc0gep4q2q2m6ip9qd4uj.PNG" alt="Alt Text" width="309" height="209"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Variáveis do tipo Null é como se fossem inicilizadas com '0'ou nulas:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F8j34y3ejswbicvq48jsn.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F8j34y3ejswbicvq48jsn.PNG" alt="Alt Text" width="370" height="209"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Boolean&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Variáveis que tem o tipo booleano determinam valores como 'true' ou 'false'.&lt;br&gt;
Normalmente usadas em condições, vamos usar um exemplo um pouco mais avançado, no qual declaramos uma variável e checamos se a mesma é verdadeira ou falsa atrávés do 'IF' e 'Else':&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Condição Verdadeira:&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F3z0e77xd12d4iusnogpq.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F3z0e77xd12d4iusnogpq.jpg" alt="Alt Text" width="540" height="324"&gt;&lt;/a&gt;                                                         &lt;/p&gt;

&lt;p&gt;&lt;em&gt;Condição Falsa:&lt;/em&gt;&lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fouxxpfvmdgeyfdkur6zg.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fouxxpfvmdgeyfdkur6zg.PNG" alt="Alt Text" width="571" height="332"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Por hoje encerramos aqui, espero que estejam gostando dos artigos. &lt;br&gt;
Lembrando que, se encontrou algum erro, tem algo para acrescentar, não esqueça de deixar seu feedBack. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F9y7agh723yx0btvoat3y.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F9y7agh723yx0btvoat3y.jpg" alt="Alt Text" width="308" height="164"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
    </item>
    <item>
      <title>Manipulação de variáveis em JS - String</title>
      <dc:creator>Amanda Silva</dc:creator>
      <pubDate>Sun, 23 Feb 2020 19:50:05 +0000</pubDate>
      <link>https://forem.com/asilva-dev/manipulacao-de-variaveis-em-js-string-1b8f</link>
      <guid>https://forem.com/asilva-dev/manipulacao-de-variaveis-em-js-string-1b8f</guid>
      <description>&lt;p&gt;Em quatro meses trabalhando como desenvolvedora front end com Angular, cheguei a conclusão que a gente sempre tem que aprender algo novo. Entender o framework é ok para o nosso dia a dia, mas e a base?&lt;br&gt;
Eu tenho percebido que muitas vezes me pego com dificuldades na lógica com o JavaScript.  Então, com o intuito de ajudar quem, assim como eu, está começando, resolvi estudar novamente ; agora com mais atenção e fazer alguns artigos semanalmente com dicas básicas que podem ser úteis.&lt;/p&gt;

&lt;p&gt;Nos primeiros artigos, irei falar sobre variáveis e seus tipos. &lt;br&gt;
Mas afinal, o que é uma variável?&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fuxxns7freudmsmehgeeu.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fuxxns7freudmsmehgeeu.jpg" alt="Alt Text" width="500" height="318"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Variáveis são responsáveis por salvar dados que podem ser acessados e manipulados posteriormente. No javascript temos os seguintes tipos de variáveis strings, number, boolean, null, undefined, symbol, object, function e array. &lt;/p&gt;

&lt;p&gt;O primeiro tema abordado será sobre a manipulação de variáveis com o tipo string.&lt;/p&gt;

&lt;p&gt;Variáveis do tipo string comportam textos que são "cadeias de carácteres" que são utilizadas para representar palavras, frases ou textos de um código.&lt;/p&gt;

&lt;p&gt;Ao declarar uma string, podemos manipular as mesmas de diversas maneiras.&lt;/p&gt;

&lt;p&gt;No primeiro exemplo vamos declarar uma variável qualquer e conferir o tamanho da mesma com a propriedade length:&lt;/p&gt;

&lt;p&gt;O primeiro passo é declarar a variável myVar e atribuir um conteúdo. Logo após, declaramos outra variável recebendo a primeira variável como atribuição e utilizamos a propriedade . length. Essa propriedade é responsável por checar o tamanho da variável. Ao executar o console.log, temos como resultado o tamanho da variável:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F38hvt1wdhyx0uorde28y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F38hvt1wdhyx0uorde28y.png" alt="Alt Text" width="800" height="249"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Agora vamos separar uma váriavel definindo um limitador com a propriedade split:&lt;br&gt;
Declaramos uma variável e inserimos o delimitador + no meio da variável. Em seguida chamamos o .split com o sinal + como parâmetro. Esse sinal diz que ao executar a variável, devemos separar a mesma com o que tem antes do + e depois do mesmo:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbff82bjh8z54z1cxdvnc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fbff82bjh8z54z1cxdvnc.png" alt="Alt Text" width="800" height="160"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;É possível substituir trechos das variáveis com a propriedade .replace. No exemplo criamos a variável 'substituindoJS' e vamos trocar a palavra 'substituindo' por 'aprendendo':&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fo9u34r67oarcxm64va0a.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fo9u34r67oarcxm64va0a.PNG" alt="Alt Text" width="800" height="158"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E se eu quiser pegar só um pedaço da variável, será que é possível? Sim, com a propriedade .slice. &lt;br&gt;
Declaramos a variável 'aprendendoJS' e passamos como parâmetro ao .slice o -2. Esse número -2 diz ao console que eu quero somente as duas últimas posições da minha variável:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F8itwi8uf4axgmavkgqhl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F8itwi8uf4axgmavkgqhl.png" alt="Alt Text" width="742" height="190"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Para pegar trechos de variáveis podemos também utilizar a propriedade .substr. No exemplo e passamos como parâmetro o '0' e '2'. Esses números irão dizer que eu quero pegar do inicio da minha variavel até o caracter '2':&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fg5ahjo6du5q60nej5h4u.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fg5ahjo6du5q60nej5h4u.PNG" alt="Alt Text" width="800" height="161"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;E se eu quiser pegar da segunda posição em diante? &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F06iqt1vf2mw1pwuxqsp9.PNG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F06iqt1vf2mw1pwuxqsp9.PNG" alt="Alt Text" width="800" height="160"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Bom por hoje é isso, legal ver o quanto de coisas que podemos fazer com uma string né?&lt;br&gt;
Gostou do artigo? Achou algo que eu posso melhorar ou até acrescentar no artigo? Deixa seu recadinho que estou super aberta.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fmbnq3s6l5pge7kyx4z67.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fmbnq3s6l5pge7kyx4z67.jpg" alt="Alt Text" width="308" height="164"&gt;&lt;/a&gt;&lt;/p&gt;

</description>
      <category>javascript</category>
    </item>
  </channel>
</rss>
