Potential Extensions
Even a little bit of creativity can take you places with this application. Here are a few of the possibilities that come to mind:
Make “smarter” products.
Add refined search capabilities.
Add cookie features for frequent shoppers.
Making Smarter Products
It’s not as though each product has its own IQ. Suppose, however, you added a property, an array, to the product constructor that held the names and category/product number pairs of those products related to the one currently in view. The product constructor might then look like so:
function product(name, description, price, unit, related) {
this.name = name;
this.description = description;
this.price = price;
this.unit = unit;
this.related = related;
this.plu = name.substring(0, 3).toUpperCase() +
parseInt(price).toString();
this.icon = new Image();
return this;
}The argument related represents an array that you can assign to the related property. Whenever the user views a product, you could then iterate through the related elements, generating links to them. This is a way to cross-market your products.
If this sounds a little new to you, visit http://www.amazon.com. Search for a book on one of your favorite topics. When you click on one of the links from the results list, the page profiling your book will also provide links to other books purchased by those who bought the book you’re viewing.
Add Refined Search Capabilities
This goes back to extending the search engine capabilities, but there are several ...