var toni = new Person("Toni", "Mustermann"); var max = new Employee("Max", "Muster", "Sales"); alert(toni instanceof Person); // true alert(toni instanceof Employee); // false alert(max instanceof Person); // true alert(max instanceof Employee); // true
Listing 5: Closures
var inner; function outer() { var x = 5; inner = function() { x++; alert(x); } } // Erzeugen einer Closure, die x enthält outer(); // Funktion aufrufen, die auf die Closure zugreift inner(); // Ausgabe: "6" inner(); // Ausgabe: "7"
Listing 6: Kapselung mit Closures
function Person(firstName, lastName) { var title; this.setTitle = function(t) { title = t; } this.getName = function() { return title + " " + firstName + " " + lastName; }; } var testPerson = new Person("Max", "Muster"); testPerson.setTitle("Dr."); alert(testPerson.getName()); // Ausgabe: "Dr. Max Muster"