62
O Javascript que você nunca viu

O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

O Javascriptque você nunca viu

Page 2: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

lead solutions architect_

quem sou eu_

lsantos.dev

Page 3: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

O Javascripto <3

Page 4: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Removendo Callbacks

Page 5: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

The Dark Side of Javascript

JS

Page 6: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Object.freeze

Page 7: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 8: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 9: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Iteradores Assíncronos_

Page 10: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 11: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 12: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 13: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 14: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 15: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 16: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 17: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Promise.finally

Page 18: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 19: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Ranges

Page 20: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 21: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 22: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 23: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Propriedades readonly_

Page 24: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Object.defineProperty

Page 25: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 26: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Object.defineProperties

Page 27: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

"age" não apareceu porque não é enumerável

Page 28: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Criação dinâmica de funções_

Page 29: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 30: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 31: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Operador in

Page 32: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 33: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 34: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Construção dinâmica por reflexão_

Page 35: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 36: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 37: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 38: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Bitwise Operators_

Page 39: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

AND

Page 40: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 41: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

O que?!

Page 42: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

A B C D Resultado

X 0 1 0 1 5

Y 0 0 0 1 1

Z 0 0 0 1 1

Page 43: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Exibindo dados binários como string

Page 44: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

OR

Page 45: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 46: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

A B C D Resultado

X 0 1 0 1 5

Y 0 0 0 1 1

Z 0 1 0 1 5

Page 47: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

XOR

Page 48: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 49: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

A B C D Resultado

X 0 1 0 1 5

Y 0 0 0 1 1

Z 0 1 0 0 4

Page 50: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Criptografia

Page 51: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 52: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

NOT

Page 53: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 54: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

A B C D Resultado

X 0 1 0 1 5

Z 1 0 1 0 10

Page 55: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Condição de existência

Page 56: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 57: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

SHIFT

Page 58: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 59: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

Multiplicação e divisão

Page 60: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010
Page 61: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

referências_

- imasters.com.br/desenvolvimento/o-lado-escuro-javascript- medium.com/trainingcenter/entendendo-promises-de-uma-vez-por-todas-3

2442ec725c2- imasters.com.br/desenvolvimento/campos-publicos-e-privados-em-classes-j

avascript-o-que-vem-por-ai-no-esnext- medium.com/trainingcenter/iterators-em-javascript-880adef14495- medium.com/trainingcenter/reflection-em-javascript-73fc0e702e2- developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objec

ts/Reflect- speakerdeck.com/khaosdoctor/desmistificando-heranca-e-prototipos-no-jav

ascript

Page 62: O Javascript...2019/06/11  · 1 3 4 6 7 = 5 // 0101 em binário const valor 1 5 5 5 5 I // 1010 = * 2 // 10 * 4 // 10 20 = 5 // 0101 em binário const valor 1 left ( *2) 5 1 // 1010

/khaosdoctor @_staticvoidlsantos.dev @khaosdoctor

obrigado_