1 / 12

Chapter 4(b): Fundamentals of JavaScript

Chapter 4(b): Fundamentals of JavaScript. 4.1 Capabilities 4.2 Essential Terminology 4.3 Structure of JavaScript Code 4.4 Data and Objects 4.5 Tokens, Operators, Expressions, and Statements 4.6 The JavaScript math Object 4.7 Comparison Operators and Decision-Making Structures

Download Presentation

Chapter 4(b): Fundamentals of JavaScript

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 4(b): Fundamentals of JavaScript • 4.1 Capabilities • 4.2 Essential Terminology • 4.3 Structure of JavaScript Code • 4.4 Data and Objects • 4.5 Tokens, Operators, Expressions, and Statements • 4.6 The JavaScript math Object • 4.7 Comparison Operators and Decision-Making Structures • 4.8 Loop Structures • 4.9 Using JavaScript to Change Values in Form Fields

  2. Chapter 4.8: Loop (Repetition) Structures • Loops provide a structured way to perform repetitive calculations. • Count-controlled loops perform calculations a pre-defined number of times. • Conditional loops perform calculations until, or as long as, some predefined condition is true.

  3. Count-Controlled Loops for (counter=start; {expression based on high (or low) value of counter}; expression controlling incrementing (or decrementing) of counter} ) Document 4.7 (counter2.htm) <html><head><title>Counter</title><script>var k;document.write("Here's a simple counter: "+"<br />");for (k=0; k<=10; k++) document.write(k+"<br />");</script></head><body></body></html>

  4. More Count-Controlled Loops Document 4.8 (countdown2.htm) <html><head> <title>Countdown</title><script>var k;document.write("Start launch sequence!" +"<br />");for (k=10; k>=0; k--) document.write(k+"<br />");document.write("FIRE!!");</script></head><body></body></html>

  5. Conditional Loops • Pre-test loops – may not be executed at all, depending on initial settings. while ({logical expression} ) { {statements that result in changing the value of the pre-test logical expression} } • Post-test loops – always executed at least once. do { {statements that result in changing the value of the post-test logical expression} } while ({logical expression} );

  6. The Elevator Problem Document 4.9 (gorilla1.htm, partial) <script language="javascript" type="text/javascript">var totalWeight=0.,limitWeight=500.,maxWeight=500.;var newWeight;do {newWeight=Math.floor(Math.random()*(maxWeight+1));if ((totalWeight + newWeight) <= limitWeight) {totalWeight += newWeight;document.write("New weight = " + newWeight + " total weight = " + totalWeight + "<br />");newWeight=0.; }elsedocument.write("You weigh " + newWeight + " lb. I'm sorry, but you can't get on."); } while ((totalWeight + newWeight) <= limitWeight);</script>

  7. Newton's Square Root Algorithm Given a number n: 1. Make a guess for the square root of n. n/2 is a reasonable guess. 2. Replace g with (g + n/g)/2. 3. Repeat step 2 until the absolute difference between g*g and n is smaller than some specified value. Document 4.10 (newtonSqrt2.htm) <html><head><title>Newton's square root algorithm</title><script language="javascript" type="text/javascript">var n=parseFloat(prompt("Enter a positive number:"));var g=n/2;do {g = (g + n/g)/2.;} while (Math.abs(g*g-n) > 1e-5);alert(g+" is the square root of "+n+".");</script></head> <body></body></html>

  8. Using JavaScript to Change Form Field Values • The basic use for JavaScript is to access and change the values in <input /> elements used in forms • "Event handlers" allow us to do this from within forms.

  9. Pressure Calculation <form>Fill in elevation and sea-level pressure: <input type="text" name="elevation" value="0" size="8" maxlength="7" /> (m)<input type="text" name="sea_level_pressure" value="1013.25" size="8" maxlength="7" /> (mbar) <br /><input type="button" name="Calculate" value="Click here to get station pressure:" onclick="result.value= parseFloat(sea_level_pressure.value)- parseFloat(elevation.value)/9.2;" /><input type="text" name="result" value="1013.25" size="8" maxlength="7" /> (mbar)<br /> <input type="reset" value="Reset all fields." /></form>

  10. Rectangular Rule Integration How do we do it?

  11. Rectangular Rule Integration Use pseudocode to develop the algorithm: INITIALIZE integral = 0 (Initialize the value to 0.) LOOP for i = 0 to n – 1, x = x0 + i•dx + dx/2 y=x•x (This could be any function of x.) integral = integral + y END LOOP ASSIGN integral = integral•dx

  12. The code: Document 4.13 <html><head><title></title></head><body><h2>Rectangular Rule integration</h2>for f(x)=x<sup>2</sup><form> x<sub>0</sub>: <input type="text" name="x0" value="1" /> <br /> x<sub>1</sub>: <input type="text" name="x1" value="3" /> <br /> <input type="button" value="Click here to integrate." onclick="var x,X0,X1,i,n=20,integral=0,y; //y=x*x X1=parseFloat(x1.value); X0=parseFloat(x0.value); dx=(X1-X0)/n; for(i=0; i<n; i++) { x=X0 + i*dx + dx/2; y=x*x; integral+=y; } result.value=integral*dx; "/> <input type="text" name="result" value="result" /></br /></form></body></html>

More Related