Following functions and variables that "live" in global namespace so they accessible in script without any namespace designator, e.g.
var r = eval( " 348.0 / 23.7 " );
stdout.printf( "%f" , r );
Global variables |
|||
| stdin | stream, standard input stream. Read-only. |
These streams are created and managed by host application of the script engine | |
| stdout | stream, standard output stream. Write-only. | ||
| stderr | stream, standard error stream. Engine reports here about all uncought exceptions. | ||
Global functions |
|||
| eval |
( input : string|stream [, env :object ] ) : value
Evaluates (interprets) input and returns its value. If input is a string then function tries to interpret it as if it contains script source code. If input is a stream object then it compiles and executes source code from it. Example: after execution of the following: var obj = eval( " ({ one:1, two:2 }) " );
variable obj will contain object having two fields: one and two. env is an environment object - if provided then script execution takes place in the namespace of that object. var env = { one:1, two:2 };
After execution of two lines above variable res will contain integer 3. |
These functions available only if host application configured the engine to use them. | |
| parseData |
( input : string|stream ) : value
a.k.a. JSON++ data parser. Evaluates (interprets) data literal at the input and returns its value. Input shall contain valid data literal expression otherwise parsing exception will be thrown. Example 1: after execution of the following: var obj = parseValuel( " { one:1, two:2 } " );
variable obj will contain object having two fields: one and two. Example 2: after execution of the following:
var v = parseValuel( "3.1415926" ); variable v will contain float number 3.1415926 - parsed value of the string. Main difference from the eval function is that parseValue will not parse and execute any function declarations or functions so it is safe to use this function when data is coming from unknown sources e.g. in AJAX like of interactions. | ||
| emit |
( input :string|stream, output :stream [, env :object ] ) :value
Evaluates the input stream in serverScript mode (see below) and emits result to the output stream. Function assumes that executable script at the input is contained in <% %> brackets. Function returns result of first standalone return statement in the input stream. env is an environment object, it allows to pass parameters to the input script from the caller. | ||
| load |
( source [, asServerScript] ) :true|false
Loads (compiles and executes) source. Source here either string - file name or stream object. If asServerScript provided and equals to true then source is interpreted as a text with embedded script like PHP or ASP web page: <html> ... <% =some_script_function(); %>... </html> These two fragments: load( "c:/myscripts/test.js" ); and var s = Stream.openFile("c:/myscripts/test.js","r"); load( s );
are equivalent. Script execution takes place in the namespace of the caller of the function. | ||
| loadbc |
( source ) : true | false
Loads compiled bytecodes defined by source. Source here either string - file name or stream object. | ||
| compile |
( input : filename | Stream, output: filename | Stream [, asServerScript : true | false ] ) : true | false
Calls built-in compiler to compile input. Writes output bytecodes into out stream or file. Bytecodes can be loaded (executed) later by loadbc function. | ||
| store |
( filename | stream, value ) : true | false
Stores the value into file filename or stream in binary form. Returns true if data was stored successfully. | ||
| fetch |
( filename | stream ) : value | null
Restores value previously written into the file (filename) or stream by function store. Returns value or null if operation failed. | ||
| hash |
( value ) : integer Returns hash value of its argument. | ||
| membersOf |
( obj: object | function ) : map (object) | ||
|
Returns map (simple object) that has the same set of properties as the obj. Main purpose of membersOf is to be used in function Foo() { ... }
Foo.bar = 1; // adding property 'bar' to the
// Foo function (that is an object too)
for(var (k,v) in Foo )
... // here you should see k equal to #bar | |||
| rand |
( maxNumber ) : integer Returns a random number between 0 and maxNumber-1. | ||
| gc |
( ) : undefined
Invokes garbage collector. | ||
| crackUrl |
( url:string ) : object
Parses the url string. Returns an object having following fields:
| ||
| symbol |
( string ) : symbol
Function returns symbol of the string. Internally symbol is 32bit value so symbol space is limited - it makes no sense to "symbolize" arbitrary strings. | ||
| color | (r: int, g: int, b: int [, opacity: int | float]) : color
The color function constructs color value from red, green, blue and opacity components. |
||
| em |
( v: int | float ) : length, these functions constructs length values of correspondent type. |
||
| pr |
( v: int | float ) : length |
||
| px |
( v: int | float ) : length |
||
| cm |
( v: int | float ) : length |
||
| pt |
( v: int | float ) : length |
||
| dip |
( v: int | float ) : length |
||
| flex |
( v: int | float ) : length, flex unit value |
||