

An expression is something that returns a value. The following operators are a few that can be used and are listed from highest to lowest precedence:
| ( ) | parentheses |
|---|---|
| -- ++ | decrement and increment |
| - | negation |
| * / % | multiplication, division, and modulo |
| - + | subtraction and addition |
| = | assignment |
| -= += *= /= etc. | assignment with operation |
| , | multiple evaluation |
The concept of precedence is that some operators are more important than other operators, and need to be performed first.
For example: 2 + 3*4
Can be evaluated from left to right: (2+3)*4 = 20
However, the correct way is multiplication then addition: (2 + (3*4)) = 14
For strings the only meaningful operator is `+' for concatenation (or simply cat).
Example:
work/expr.html
<HTML>
<BODY>
<SCRIPT LANGUAGE="JavaScript">
// show precedence
document.writeln("<BR>(2+3)*4 = ",(2+3)*4);
document.writeln("<BR>(2+(3*4)) = ",(2+(3*4)));
document.writeln("<BR>2+3*4 = ",2+3*4);
// strings can only ``cat''
document.writeln("<BR>'hello ' + 'world!' = ",'hello ' + 'world!');
// this is Not-A-Number
document.writeln("<BR>'hello ' - 'o' = ",'hello' - 'o');
// some assignments of variables to expressions
var i,j,k;
i = 1 + 2*3 + 4;
j = i + 4;
j = j + 1; // not an equation ... an assignment
k = i = ++j; // because `=' is an operator ... can chain several together
document.writeln("<BR>i = ",i);
document.writeln("<BR>j = ",j);
document.writeln("<BR>k = ",k);
</SCRIPT>
</BODY>
</HTML>
- Write a JavaScript page that sets a number of variables to the following values 0, 32, 70, 100, 212
and suppose one of the variable names is f then compute the expression 5/9*(f - 32) and output f and the value for that expression using document.writeln as in the above example.
(This is the conversion expression from Fahrenheit to Celsius temperature.)

