|
 |

Returns the null value. null is typically
used to denote an object variable with no value. However, a variable
which has never been assigned will have the value undefined .
When converted to a number, null returns 0 . When
converted to a string, null returns "null" .
null has no properties and cannot be converted to an
object. When a script tries to get a property of null ,
e.g. null.foo , Resin will throw an exception.
list = { first:1, rest:null }
|
Returns the undefined value. Unassigned variables
contain the undefined value and unassigned properties also
contain the undefined value.
When converted to a number, undefined returns 0 . When
converted to a string, undefined returns "undefined" .
undefined has no properties and cannot be converted to an
object. When a script tries to get a property of undefined ,
e.g. undefined.foo , Resin will throw an exception.
var a
a
|
undefined
|
a = new Object()
a.foo
|
undefined
|
function foo(a) { return a }
foo()
|
undefined
|
Returns the boolean true value.
When converted to a number, true returns 1 . When
converted to a string, true returns "true" .
"" + true |
true |
true + true |
2 |
Boolean.prototype.a = 1
true.a
|
1
|
Returns the boolean false value.
When converted to a number, false returns 0 . When
converted to a string, false returns "false" .
"" + false |
false |
false + false |
0 |
Boolean.prototype.a = 1
false.a
|
1
|
Returns a decimal floating point number. The precision of
the number is 64 bits, the same as Java's double.
Returns a hexidecimal number.
Returns an octal integer.
Returns a string literal. Strings may contain any
character except the newline characters. Non-printable characters are
included in the string by escaping the character as in the following table.
Character Escapes
Escape |
Meaning |
\b |
backspace, 0x08 |
\e |
escape, 0x1b |
\f |
form-feed, 0x0c |
\n |
line-feed, 0x0a |
\r |
carriage-return, 0x0d |
\t |
tab, 0x09 |
\v |
vertical feed, 0xc |
\cA
|
Control-A
|
\oooo
|
Octal escape |
\xxx
|
Hex escape |
\uxxxx
|
Unicode escape |
\A
|
The character A
|
Example string literals
'"' |
" |
"'" |
' |
'\'' |
' |
'first\nsecond'
|
first
second
|
'\\\A' |
\A |
'\x4012' |
@12 |
'\uaa55'.charCodeAt(0) |
0xaa55 |
'$a' |
$a |
Returns a string literal String literals delimited by
'string' and "string" are equivalent. The script
writer can choose either to minimize the number of escapes.
@"interpolated string"
| Resin 1.0 |
Returns a string created by interpolating strings and
variables. The character '$' indicates that the value of the
following identifier should be inserted into the string.
Interpolated strings let the script writer create strings more clearly
than the standard addition operator.
Equivalent Strings
a = 3; b = 4; c = 5;
@"$a*$a + $b*$b = $c*$c"
|
3*3 + 4*4 = 5*5
|
a = 3; b = 4; c = 5;
$a + '*' + $a + ' + ' +
$b + '*' + $b + ' = ' +
$c + '*' + $c
|
3*3 + 4*4 = 5*5
|
Example interpolation
sum = 2 + 2; @"2 + 2 = $sum" |
2 + 2 = 4 |
a = [1,2,3]
@"$(a[0]) $(a[1]) $(a[2])"
|
1 2 3 |
a = [1,2,3]
@"$a[0]\n$a[1]"
|
[object Object][0]
[object Object][1]
|
a = 1; @"\$a" |
$a |
Returns a multiline interpolated string terminated by
END.
Because normal string literals cannot have newlines in
them, creating long multiline strings gets messy and all the syntax
for adding the lines together gets in the way of the string itself.
Multiline strings eliminate extraneous syntax, allowing the script to
clearly express the programmer's intentions.
Simple multiline string
a = 2
writeln(@<<END);
This is a simple multiline string.
It has $a lines.
END
|
This is a simple multiline string.
It has 2 lines.
|
Adding a Database Item
function addItem(title, author, description)
{
stmt = databasePool.createStatement();
stmt.executeUpdate(@<<END);
INSERT INTO CATALOG values (
'$title', '$author', '$description'
)
END
|
{id_1:expr_1, ..., id_n:expr_n}
|
Returns a new object with assigned properties.
It is equivalent to the following:
o = new Object();
o.id_1 = expr_1;
...
o.id_n = expr_n;
|
The Object toSource call
returns a string using the object literal format.
Returns a new array with assigned values
It is equivalent to the following:
new Array(expr_1, ..., expr_n)
|
The Array toSource call
returns a string using the array literal format.
Returns a regular expression literal.
See regexp for a complete description of
regular expression literals.
Returns a function closure.
See function for a complete description of
functions and closures.
function [name] (arg_1, ..., arg_n) {
statement_list
}
|
Sort with comparison function
a = [{a:19}, {a:1}, {a:13}]
a.sort(function (a, b) { return a.a < b.a ? -1 : 1 }).toSource()
|
[{a:1}, {a:13}, {a:19}]
|
Regexp replace using replace function
"abcdefa".replace(/[ac]/g,
function (a) { return a.charCodeAt(0) })
|
97b99def97
|
Copyright © 1998-2000 Caucho Technology. All rights reserved.
Last modified: Thu, 16 Sep 1999 14:56:48 -0700 (PDT)
|