11 KiB
Library Reference
Global functions
Function | Description |
---|---|
regex(pattern, text) | Returns true if the regex pattern matches the text, false otherwise. |
match(pattern, text) | Returns true if the wildcard pattern matches the text, false otherwise. |
len(value) | Returns the length of the value, i.e. the number of elements for an array or dictionary, or the length of the string in bytes. |
union(array, array, ...) | Returns an array containing all unique elements from the specified arrays. |
intersection(array, array, ...) | Returns an array containing all unique elements which are common to all specified arrays. |
keys(dict) | Returns an array containing the dictionary's keys. |
string(value) | Converts the value to a string. |
number(value) | Converts the value to a number. |
bool(value) | Converts the value to a bool. |
random() | Returns a random value between 0 and RAND_MAX (as defined in stdlib.h). |
log(value) | Writes a message to the log. Non-string values are converted to a JSON string. |
log(severity, facility, value) | Writes a message to the log. severity can be one of LogDebug , LogNotice , LogInformation , LogWarning , and LogCritical . Non-string values are converted to a JSON string. |
typeof(value) | Returns the type object for a value. |
exit(integer) | Terminates the application. |
Math object
The global Math
object can be used to access a number of mathematical constants
and functions.
Math.E
Euler's constant.
Math.LN2
Natural logarithm of 2.
Math.LN10
Natural logarithm of 10.
Math.LOG2E
Base 2 logarithm of E.
Math.PI
The mathematical constant Pi.
Math.SQRT1_2
Square root of 1/2.
Math.SQRT2
Square root of 2.
Math.abs
Signature:
function abs(x);
Returns the absolute value of x
.
Math.acos
Signature:
function acos(x);
Returns the arccosine of x
.
Math.asin
Signature:
function asin(x);
Returns the arcsine of x
.
Math.atan
Signature:
function atan(x);
Returns the arctangent of x
.
Math.atan2
Signature:
function atan2(y, x);
Returns the arctangent of the quotient of y
and x
.
Math.ceil
Signature:
function ceil(x);
Returns the smallest integer value not less than x
.
Math.cos
Signature:
function cos(x);
Returns the cosine of x
.
Math.exp
Signature:
function exp(x);
Returns E raised to the x
th power.
Math.floor
Signature:
function floor(x);
Returns the largest integer value not greater than x
.
Math.isinf
Signature:
function isinf(x);
Returns whether x
is infinite.
Math.isnan
Signature:
function isnan(x);
Returns whether x
is NaN (not-a-number).
Math.log
Signature:
function log(x);
Returns the natural logarithm of x
.
Math.max
Signature:
function max(...);
Returns the largest argument. A variable number of arguments can be specified. If no arguments are given -Infinity is returned.
Math.min
Signature:
function min(...);
Returns the smallest argument. A variable number of arguments can be specified. If no arguments are given +Infinity is returned.
Math.pow
Signature:
function pow(x, y);
Returns x
raised to the y
th power.
Math.random
Signature:
function random();
Returns a pseudo-random number between 0 and 1.
Math.round
Signature:
function round(x);
Returns x
rounded to the nearest integer value.
Math.sign
Signature:
function sign(x);
Returns -1 if x
is negative, 1 if x
is positive
and 0 if x
is 0.
Math.sin
Signature:
function sin(x);
Returns the sine of x
.
Math.sqrt
Signature:
function sqrt(x);
Returns the square root of x
.
Math.tan
Signature:
function tan(x);
Returns the tangent of x
.
Number type
Number#to_string
Signature:
function to_string();
The to_string
method returns a string representation of the number.
Example:
var example = 7
example.to_string() /* Returns "7" */
Boolean type
Boolean#to_string
Signature:
function to_string();
The to_string
method returns a string representation of the boolean value.
Example:
var example = true
example.to_string() /* Returns "true" */
String type
String#find
Signature:
function find(str, start);
Returns the zero-based index at which the string str
was found in the string. If the string
was not found -1 is returned. start
specifies the zero-based index at which find
should
start looking for the string (defaults to 0 when not specified).
Example:
"Hello World".find("World") /* Returns 6 */
String#len
Signature
function len();
Returns the length of the string in bytes. Note that depending on the encoding type of the string this is not necessarily the number of characters.
Example:
"Hello World".len() /* Returns 11 */
String#lower
Signature:
function lower();
Returns a copy of the string with all of its characters converted to lower-case.
Example:
"Hello World".lower() /* Returns "hello world" */
String#upper
Signature:
function upper();
Returns a copy of the string with all of its characters converted to upper-case.
Example:
"Hello World".upper() /* Returns "HELLO WORLD" */
String#replace
Signature:
function replace(search, replacement);
Returns a copy of the string with all occurences of the string specified in search
replaced
with the string specified in replacement
.
String#split
Signature:
function split(delimiters);
Splits a string into individual parts and returns them as an array. The delimiters
argument
specifies the characters which should be used as delimiters between parts.
Example:
"x-7,y".split("-,") /* Returns [ "x", "7", "y" ] */
String#substr
Signature:
function substr(start, len);
Returns a part of a string. The start
argument specifies the zero-based index at which the part begins.
The optional len
argument specifies the length of the part ("until the end of the string" if omitted).
Example:
"Hello World".substr(6) /* Returns "World" */
String#to_string
Signature:
function to_string();
Returns a copy of the string.
Array type
Array#add
Signature:
function add(value);
Adds a new value after the last element in the array.
Array#clear
Signature:
function clear();
Removes all elements from the array.
Array#clone
function clone();
Returns a copy of the array. Note that for elements which are reference values (e.g. objects such as arrays and dictionaries) only the references are copied.
Array#contains
Signature:
function contains(value);
Returns true if the array contains the specified value, false otherwise.
Array#len
Signature:
function len();
Returns the number of elements contained in the array.
Array#remove
Signature:
function remove(index);
Removes the element at the specified zero-based index.
Array#set
Signature:
function set(index, value);
Sets the element at the zero-based index to the specified value. The index
must refer to an element
which already exists in the array.
Array#sort
Signature:
function sort(less_cmp);
Returns a copy of the array where all items are sorted. The items are
compared using the <
(less-than) operator. A custom comparator function
can be specified with the less_cmp
argument.
Dictionary type
Dictionary#clone
Signature:
function clone();
Returns a copy of the dictionary. Note that for elements which are reference values (e.g. objects such as arrays and dictionaries) only the references are copied.
Dictionary#contains
Signature:
function contains(key);
Returns true if a dictionary item with the specified key
exists, false otherwise.
Dictionary#len
Signature:
function len();
Returns the number of items contained in the dictionary.
Dictionary#remove
Signature:
function remove(key);
Removes the item with the specified key
. Trying to remove an item which does not exist
is a no-op.
Dictionary#set
Signature:
function set(key, value);
Creates or updates an item with the specified key
and value
.
Function type
Function#call
Signature:
function call(thisArg, ...);
Invokes the function using an alternative this
scope. The thisArg
argument specifies the this
scope for the function. All other arguments are passed directly to the function.
Example:
function set_x(val) {
this.x = val
}
dict = {}
set_x.call(dict, 7) /* Invokes set_x using `dict` as `this` */
Function#callv
Signature:
function callv(thisArg, args);
Invokes the function using an alternative this
scope. The thisArg
argument specifies the this
scope for the function. The items in the args
array are passed to the function as individual arguments.
Example:
function set_x(val) {
this.x = val
}
var dict = {}
var args = [ 7 ]
set_x.callv(dict, args) /* Invokes set_x using `dict` as `this` */