来看看怎么用typescript实现链表:
class Student {
public fullname: string;
public Next: Student;
constructor(public firstname, private middleinitial, public lastname) {
this.fullname = firstname + " " + middleinitial + " " + lastname;
}
}
interface Person {
firstname: string;
lastname: string;
}
function greeter(person : Person) {
return "<h1>Hello, " + person.firstname + " " + person.lastname + "</h1>";
}
var user = new Student("Jane", "M.", "User");
user.Next = new Student("Tony", "Mr.", "Student");
while (user!=null) {
document.body.innerHTML += greeter(user);
user = user.Next;
}
生成的JavaScript:
var Student = (function () {
function Student(firstname, middleinitial, lastname) {
this.firstname = firstname;
this.middleinitial = middleinitial;
this.lastname = lastname;
this.fullname = firstname + " " + middleinitial + " " + lastname;
}
return Student;
})();
function greeter(person) {
return "<h1>Hello, " + person.firstname + " " + person.lastname + "</h1>";
}
var user = new Student("Jane", "M.", "User");
user.Next = new Student("Tony", "Mr.", "Student");
while (user != null) {
document.body.innerHTML += greeter(user);
user = user.Next;
}
//# sourceMappingURL=greeter.js.map