O'Reilly logo

JavaScript Application Cookbook by Jerry Bradenbaugh

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

questions.js—The JavaScript Source File

Let’s continue with questions.js , the JavaScript source file called by administer.html, shown in Example 2.2.

Example 2-2. The Beginning of the questions.js Source Code

     1  function question(answer, support, question, a, b, c, d) {
     2    this.answer = answer;
     3    this.support = support;
     4    this.question = question;
     5    this.a = a;
     6    this.b = b; 
     7    this.c = c;
     8    this.d = d;
     9    return this;
    10    }
    11  var units = new Array(
    12    new question("a", "The others are external objects.", 
    13    "Choose the built-in JavaScript object:",   "Image", "mimeType", 
    14    "Password", "Area"),
    15  // and so on ...
    16    }

This is, of course, an abbreviated version of the file. Array units is much longer (75 elements in all), but this shows you that each element of units is a question object as defined in function question() in lines 1-10.

This application is based on user-defined objects (objects that you and I declare). If the concept of JavaScript objects seems obscure, check Netscape’s documentation at http://developer.netscape.com/docs/manuals/communicator/jsguide4/model.htm. It will help you better understand the JavaScript Object Model. In the meantime, use the next few paragraphs as a crash course.

An object is a set of structured data. Each object can own or have associated with it two types of entities—properties and methods. Properties have something, such as the number 6, the expression a * b, or the string “Jimmy.” Methods do something, such as calculate the circumference ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required