Background Image
Table of Contents Table of Contents
Previous Page  59 / 68 Next Page
Information
Show Menu
Previous Page 59 / 68 Next Page
Page Background

59

REVISTA LOCAWEB

let stang = new

RaceCar('Ford Ka', 150);

stang.printCurrentSpeed();

stang.goFast();

stang.printCurrentSpeed();

Um exemplo mais completo,

para uso em desenvolvimento de

jogos em JS, é a classe “Monstro”:

class Monstro {

constructor(name, health)

{

public name = name;

private health = health;

}

// Um identificador

seguido por uma lista de

argumentos define um método.

//Neste caso o método

"atacar".

atacar(target) {

log('O monstro ataca o

' + target);

}

get estaVivo() {

return private(this).

health > 0;

}

set health(value) {

if (value < 0) {

throw new Error('Saúde

deve ser não negativo.')

}

private(this).health =

value

}

// Inicializando o valor

de numero de ataques.

public numAtaques = 0;

// Incializando uma

constante para o alerta.

public const attackMessage

= 'O monstro acertou você!';

}

O novo JS também permite

herança em classes, desta forma:

class Base {}

class Derived extends Base

{}

let parent = {};

class Derived prototype

parent {}

Um exemplo bem simples,

para facilitar o acompanhamento

do código linha a linha:

class Usuario{

constructor(nome, email)

{

this.nome = nome;

if (email) {

this.email =

email;

}

}

saida(){

console.log("Olá,

meu nome é "+this.nome+" e

meu email é "+this.email);

}

}

Comandos no console para

testar a classe “Usuário”:

var Homero = new

Usuario("Homero", "homero@

atibaia.com.br");

Homero.saida(); // Olá, meu

nome é Homero e meu email é

homero@atibaia.com.br

Sobre o autor

Homero Ottoni é programador e

sócio-proprietário da empresa Make

Media de desenvolvimento web.

LW

Internet Explorer: funcionalidades do JavaScript, em geral, funcionam bem em qualquer browser de internet

[

A NOVA VERSÃO DO JAVASCRIPT 6.0

HARMONY REPRESENTA UM GRANDE

AVANÇO PARA A LINGUAGEM

]

Conclusão

A nova versão do JavaScript

6.0 – Harmony representa

um grande avanço para a

linguagem, ainda que algumas

funcionalidades esperadas pelos

desenvolvedores não tenham

sido implementadas. As que

foram são muito bem-vindas e

podem ajudar muito tanto na

velocidade de desenvolvimento

TXDQWR QD FRQíDELOLGDGH GR

código resultante.

Esta versão deve se tornar

uma alternativa à altura de

extensões como TypeScript,

CoffeeScript e outras.

Links de referência:

Classe Carro baseada neste

exemplo (com demo funcional):

ZZZHV íGGOH QHW KUXW U

.

Documentação Ecmascript:

wiki.ecmascript.org/doku.php.