typescript implements

by Alejandro M

HTML

var Dog = (function () {
    function Dog(name) {
        this.name = name;
    }
    Dog.prototype.makeSound = function () {
        return "Gua";
    };
    return Dog;
}());
function sayHi(animal) {
    alert("Hola " + animal.name + " " + animal.makeSound());
}
sayHi(new Dog("Timmy"));

TypeScript

interface Animal { //sin constructor
  name: string;
  makeSound();
}
class Dog implements Animal{ //usando implement
  constructor(name:string) { 
    this.name = name;
  }
  name: string;
  makeSound() { 
    return "Gua";
  }
}
function sayHi(animal: Animal) { 
  alert("Hola " + animal.name + " " + animal.makeSound())
}
sayHi(new Dog("Timmy"))