[Javascript] New to JavaScript, trouble w/ first prog

SoitPP at aol.com SoitPP at aol.com
Sat Mar 23 19:43:18 CST 2002


Hello Javascript List,
I'm a newbie javascript programmer. I'm just now learning the ways of the 
script. I'm having trouble understanding how or what order variables seem to 
be initialized in. I'm also having trouble with functions returning "NaN" and 
"undefined" but I'll tackle the first problem first. In my program 'theForm' 
evaluates to [null]. I don't understand this. Why is it evaluating to [null]? 
It's right there in the beginning of the program. It should contain 
document.forms[0] shouldn't it? After that I've also got my functions 
evaluateFica() and evaluateMed() evaluating to NaN and evaluateFed() and 
evaluateSta() evaluating to undefined. Don't quite understand the precedence 
going on here, can someone shed some light? I thought the code seemed pretty 
straight forward I don't know what I'm missing. 
Peace,
an eager newbie  Aaron

Here is my program code:

<!-- Hide from mail client

<html>
<head>
<title>Cheque Evaluator</title>
<script language="JavaScript">
var gross
var theForm = document.forms[0]
function evaluateFica() {
var evalu = eval(gross * 0.067)
return evalu}

function evaluateMed() {
var evalu = eval(gross * 0.0145)
return evalu}

function evaluateFed() {
if (gross >= 0 && gross <= 55) {
evalu = eval(gross * .0765)
return evalu}
if (gross > 55 && gross <= 60) {
evalu = 4.40
return evalu}
if (gross > 60 && gross <= 65) {
evalu = 4.78
return evalu}
if (gross > 65 && gross <= 70) {
evalu = 5.16
return evalu}
if (gross > 70 && gross <= 75) {
evalu = 5.55
return evalu}
if (gross > 75 && gross <= 80) {
evalu = 5.93
return evalu}
if (gross > 80 && gross <= 85) {
evalu = 6.31
return evalu}
if (gross > 85 && gross <= 90) {
evalu = 6.69
return evalu}
if (gross > 90 && gross <= 95) {
evalu = 7.08
return evalu}
if (gross > 95 && gross <= 100) {
evalu = 7.46
return evalu}
if (gross > 100 && gross <= 105) {
evalu = 7.84
return evalu}
if (gross > 105 && gross <= 110) {
evalu = 8.22
return evalu}
if (gross > 110 && gross <= 115) {
evalu = 9.61
return evalu}
if (gross > 115 && gross <= 120) {
evalu = 10.99
return evalu}
if (gross > 120 && gross <= 125) {
evalu = 11.37
return evalu}
if (gross > 125 && gross <= 130) {
evalu = 12.75
return evalu}
if (gross > 130 && gross <= 135) {
evalu = 14.14
return evalu}
if (gross > 135 && gross <= 140) {
evalu = 15.52
return evalu}
if (gross > 140 && gross <= 145) {
evalu = 15.90
return evalu}
if (gross > 145 && gross <= 150) {
evalu = 17.28
return evalu}
if (gross > 150 && gross <= 155) {
evalu = 18.67
return evalu}
if (gross > 155 && gross <= 160) {
evalu = 20.05
return evalu}
if (gross > 160 && gross <= 165) {
evalu = 20.43
return evalu}
if (gross > 165 && gross <= 170) {
evalu = 21.81
return evalu}
if (gross > 170 && gross <= 175) {
evalu = 23.20
return evalu}
if (gross > 175 && gross <= 180) {
evalu = 24.58
return evalu}
if (gross > 180 && gross <= 185) {
evalu = 24.96
return evalu}
if (gross > 185 && gross <= 190) {
evalu = 26.34
return evalu}
if (gross > 190 && gross <= 195) {
evalu = 27.73
return evalu}
if (gross > 195 && gross <= 200) {
evalu = 29.11
return evalu}
if (gross > 200 && gross <= 210) {
evalu = 30.68
return evalu}
if (gross > 210 && gross <= 220) {
evalu = 32.45
return evalu}
if (gross > 220 && gross <= 230) {
evalu = 35.21
return evalu}
if (gross > 230 && gross <= 240) {
evalu = 36.98
return evalu}
if (gross > 240 && gross <= 250) {
evalu = 39.74
return evalu}
if (gross > 250 && gross <= 260) {
evalu = 41.51
return evalu}
if (gross > 260 && gross <= 270) {
evalu = 44.27
return evalu}
if (gross > 270 && gross <= 280) {
evalu = 46.04
return evalu}
if (gross > 280 && gross <= 290) {
evalu = 48.80
return evalu}
if (gross > 290 && gross <= 300) {
evalu = 50.57
return evalu}
if (gross > 300 && gross <= 310) {
evalu = 53.33
return evalu}
if (gross > 310 && gross <= 320) {
evalu = 55.10
return evalu}
if (gross > 320 && gross <= 330) {
evalu = 57.86
return evalu}
if (gross > 330 && gross <= 340) {
evalu = 59.63
return evalu}
if (gross > 340 && gross <= 350) {
evalu = 62.39
return evalu}
if (gross > 350 && gross <= 360) {
evalu = 64.16
return evalu}
if (gross > 360 && gross <= 370) {
evalu = 66.92
return evalu}
if (gross > 370 && gross <= 380) {
evalu = 68.69
return evalu}
if (gross > 380 && gross <= 390) {
evalu = 71.45
return evalu}
if (gross > 390 && gross <= 400) {
evalu = 73.22
return evalu}
if (gross > 400 && gross <= 410) {
evalu = 75.98
return evalu}
if (gross > 410 && gross <= 420) {
evalu = 77.75
return evalu}
if (gross > 420 && gross <= 430) {
evalu = 80.51
return evalu}
if (gross > 430 && gross <= 440) {
evalu = 82.28
return evalu}
if (gross > 440 && gross <= 450) {
evalu = 85.04
return evalu}
if (gross > 450 && gross <= 460) {
evalu = 86.81
return evalu}
if (gross > 460 && gross <= 470) {
evalu = 89.57
return evalu}
if (gross > 470 && gross <= 480) {
evalu = 91.34
return evalu}
if (gross > 480 && gross <= 490) {
evalu = 94.10
return evalu}
if (gross > 490 && gross <= 500) {
evalu = 95.87
return evalu}
if (gross > 500 && gross <= 510) {
evalu = 98.63
return evalu}
if (gross > 510 && gross <= 520) {
evalu = 100.40
return evalu}
if (gross > 520 && gross <= 530) {
evalu = 103.16
return evalu}
if (gross > 530 && gross <= 540) {
evalu = 104.93
return evalu}
if (gross > 540 && gross <= 550) {
evalu = 107.69
return evalu}
if (gross > 550 && gross <= 560) {
evalu = 109.46
return evalu}
if (gross > 560) {
evalu = "Gross To High"
return evalu}
}

function evaluateSta() { 
subDependant = eval(gross - 53.85)
if (subDependant < 31) {
evalu = 0.0
return evalu}
if (subDependant >= 31 && subDependant <= 137) {
evalu = eval(subDependant * .017)
return evalu}
if (subDependant > 137 && subDependant <= 242) {
evalu = eval(subDependant * .032 + 1.80)
return evalu}
if (subDependant > 242 && subDependant <= 338) {
evalu = eval(subDependant * .047 + 5.18)
return evalu}
if (subDependant > 338 && subDependant <= 531) {
evalu = eval(subDependant * .060 + 9.70)
return evalu}
if (subDependant > 531 && subDepndant <= 838) {
evalu = eval(subDependant * .071 + 21.24)
return evalu}
if (subDependant > 838) {
evalu = "Gross To High"
return evalu}
}

function evaluate() {
var gross = eval((theForm.jobsElement.value * 35) + (theForm.otElement.value 
* 14) + (theForm.drivesElement.value * 15))
theForm.ficaElement.value = evaluateFica()
theForm.medElement.value = evaluateMed()
theForm.fedElement.value = evaluateFed()
theForm.staElement.value = evaluateSta()
theForm.taxElement.value = eval(theForm.ficaElement.value + 
theForm.medElement.value + theForm.fedElement.value + 
theForm.staElement.value)
theForm.chequeElement.value = eval(gross - theForm.taxElement.value)
}
</script>
<body>
<center>
<h1>AAA Steam Cheque Evaluator</h1><br/>
<form>
<table border="0" cellpadding="1" bgcolor="black">
<tr align="center" bgcolor="#6F7A9F">
<td>Jobs</td> <td>OT</td> <td>Drives</td> <td>Gross</td></tr>
<tr bgcolor="#6F7A9F">
<td><input type="text" value="0" name="jobsElement"></td>
<td><input type="text" value="0" name="otElement"></td>
<td><input type="text" value="0" name="drivesElement"></td>
<td><input type="text" value="0" name="grossElement"></td></tr>
<tr align="center" bgcolor="#6F7A9F">
<td>FICA</td> <td>MED</td> <td>FED</td> <td>State</td>
<tr bgcolor="#6F7A9F">
<td><input type="text" value="0" name="ficaElement"></td>
<td><input type="text" value="0" name="medElement"></td>
<td><input type="text" value="0" name="fedElement"></td>
<td><input type="text" value="0" name="staElement"></td>
<tr bgcolor="#6F7A9F">
<td><input type="button" value="Evaluate" onClick="evaluate()"></td>
<td>TAX<br /><input type="text" value="0" name="taxElement"></td>
<td>Net Cheque<br /><input type="text" value="0" name="chequeElement"></td>
</table>
</form>
</body>
</html>

// stop hiding from mail client -->



More information about the Javascript mailing list