| /////////////////////////////////////////////////////// |
| |
| function Square(x) |
| { |
| this.x = x; |
| } |
| |
| new Square(0); // create prototype |
| |
| function Square_area() { return this.x * this.x; } |
| Square.prototype.area = Square_area; |
| var s = new Square(3); |
| shouldBe("s.area()", "9"); |
| |
| /////////////////////////////////////////////////////// |
| |
| function Item(name){ |
| this.name = name; |
| } |
| |
| function Book(name, author){ |
| this.base = Item; // set Item constructor as method of Book object |
| this.base(name); // set the value of name property |
| this.author = author; |
| } |
| Book.prototype = new Item; |
| var b = new Book("a book", "Fred"); // create object instance |
| //edebug(e"b.name")); |
| shouldBe("b.name", "'a book'"); |
| shouldBe("b.author", "'Fred'"); // outpus "Fred" |
| |
| /////////////////////////////////////////////////////// |
| |
| shouldBe("delete Boolean.prototype", "false"); |