41
Java Script para adultos

Java script para adultos

Embed Size (px)

Citation preview

Page 1: Java script para adultos

Java Script para adultos

Page 2: Java script para adultos

Diego Rafael Perin HonórioFront-end Developer

Page 3: Java script para adultos

G4 SOLUTIONS

Page 4: Java script para adultos

Ecma Script

• European Computer Manufacturers Association

• ECMA Script

• ECMA Internacional

• Base do Javascript

Page 5: Java script para adultos

Aprimoramentos ES6

• Variable Declaration

• Block Scope

• Destructuring Assignment

• Enhanced parameters

• Template String

• Arrow Function

• Proxy

Page 6: Java script para adultos

VARIABLE DECLARTION

Page 7: Java script para adultos

var a = 0;

let b = 0;

if (true) {

console.log(a);

console.log(b);

var a = 1;

let b = 1;

console.log(a);

console.log(b);

}

console.log(a);

console.log(b);

Page 8: Java script para adultos

var a = 0;

let b = 0;

if (true) {

console.log(a); // 0

console.log(b); // undefined

var a = 1;

let b = 1;

console.log(a);

console.log(b);

}

console.log(a);

console.log(b);

Page 9: Java script para adultos

var a = 0;

let b = 0;

if (true) {

console.log(a); // 0

console.log(b); // undefined

var a = 1;

let b = 1;

console.log(a); // 1

console.log(b); // 1

}

console.log(a);

console.log(b);

Page 10: Java script para adultos

var a = 0;

let b = 0;

if (true) {

console.log(a); // 0

console.log(b); // undefined

var a = 1;

let b = 1;

console.log(a); // 1

console.log(b); // 1

}

console.log(a); // 1

console.log(b); // 0

Page 11: Java script para adultos

BLOCK SCOPE

Page 12: Java script para adultos

for(var i = 0; i < 3; i++){

var x = i + i;

console.log(x);

}

console.log(x); // 4

Page 13: Java script para adultos

for(var i = 0; i < 3; i++){

let x = i + i;

console.log(x);

}

console.log(x); // Error

Page 14: Java script para adultos

DESTRUCTING ASSIGNMENT

Page 15: Java script para adultos

obj = { first:'a',second:'b',third:'c'};

var x = obj.first;

var y = obj.second;

var z = obj.third;

Page 16: Java script para adultos

Destructuring Assignment

var {x,y,z} = { first:'a',second:'b',third:'c'};

// x = 'a', y = 'b', z = 'c‘

var {x,y,z} = ['a','b','c'];

// x = 'a', y = 'b', z = 'c‘

Page 17: Java script para adultos

ENHANCED PARAMETERS

Page 18: Java script para adultos

Default Params

Page 19: Java script para adultos

function say(name) {

name = name || 'Anonymous';

return ‘Olá, ' + name + '!';

}

console.log(say()); // Olá, Anonymous!

console.log(say(‘Diego')); // Olá, Diego!

Page 20: Java script para adultos

function say(name = 'Anonymous') {

return ‘Olá, ' + name + '!';

}

console.log(say()); // Olá, Anonymous!

console.log(say('Diego')); // Olá, Diego!

Page 21: Java script para adultos

Rest Parameter

Page 22: Java script para adultos

function f(a, b){

console.log(args);

var args =

Array.prototype.slice.call(arguments, f.length);

console.log(args);

}

f(1,2,3,4,5);

//[1,2,3,4,5];

//[3,4,5];

Page 23: Java script para adultos

function(a, b, ...args) {

console.log(args);

}

//[3,4,5];

Page 24: Java script para adultos

function ordernarArgumentos() {

var ordenados = arguments.sort();

return ordenados;

}

console.log(ordernarArgumentos(5,3,7,1));

// Error arguments.sort is not a function

// Arguments não é um objeto array, embora pareça

Page 25: Java script para adultos

Shorthand Assignment

Page 26: Java script para adultos

var arr1 = [0, 1];

var arr2 = [2, 3];

for(var i=0; i < arr2.length; i++){

arr1.push(arr2[i]);

}

//arr1 = [0,1,2,3]

Page 27: Java script para adultos

var arr1 = [0, 1, 2];

var arr2 = [3, 4, 5];

var union = [arr1, arr2]; //[0,1,2,3,4,5]

arr1.push(...arr2); //[0,1,2,3,4,5]

Page 28: Java script para adultos

let x = 5;

let y = 20;

let coordinates = {

x,

y,

z: 10,

};

console.log(coordinates); // { x: 5, y: 20, z: 10 }

Page 29: Java script para adultos

TEMPLATE STRING

Page 30: Java script para adultos

let firstName = 'Diego';

let lastName = 'Honório';

let greeting = 'Hi, my name is ' + firstName + ' ' +

lastName + '.';

Page 31: Java script para adultos

let firstName = ‘Diego';

let lastName = ‘Honório';

let greeting = `Hi, my name is ${firstName} ${lastName}.`;

Page 32: Java script para adultos

ARROW FUNCTION

Page 33: Java script para adultos

var namesList = ['Diego', 'Rafael', 'Perin', 'Honório'];

var names = namesList.filter(function (number) {

return name.length <= 5;

});

console.log(names); // ['Diego', 'Rafael', 'Perin']

Page 34: Java script para adultos

let namesList = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];

let names = namesList.filter(name => name.length <= 5);

console.log(names); // ['Diego', 'Rafael', 'Perin']

Page 35: Java script para adultos

PROXY

Page 36: Java script para adultos

var employee = { name: 'Joe Sixpack', salary: 50 };

var interceptor = {

set: function (receiver, property, value) {

console.log(property, 'is changed to', value);

receiver[property] = value;

}

};

employee = Proxy(employee, interceptor);

employee.salary = 300;

//salary is changed to 300

Page 37: Java script para adultos

CLASS

Page 38: Java script para adultos

class Pessoa {

constructor(nome, email) {

this.nome = nome;

this.comidas = [];

// verifica se o e-mail foi preenchido

if (email) {

this.email = email;

}

}

fala() {

console.log("Olá, meu nome é "+this.nome+" e meu email é

"+this.email);

}

get primeiroNome() {

return this.nome.split(" ")[0];

}

set gostaDe(comida) {

this.comidas.push(comida);

}

}

Page 39: Java script para adultos

HERANÇA

Page 40: Java script para adultos

class PessoaFisica extends Pessoa{

constructor(nome, email, cpf){

super(nome, email);

this.cpf = cpf;

}

dizCpf(){

console.log(this.cpf);

}

}