The script API provided by our scan tool software provides a core Javascript compatible interpreter. This post will help outline what Javascript functionality is available in our script API, and what is not. Since I haven't had time to write a completely exhaustive list of supported functionality, if you have a question about whether or not a Javascript function exists, just post up and ask. If it's listed here, it is definitely supported. If it's not listed here, it may not be supported, or I may have overlooked it, or I might be able to add it. So just ask.
Reserved Words:| break | do | if | switch | typeof |
| case | else | in | this | var |
| catch | false | instanceof | throw | void |
| continue | finally | new | true | while |
| default | for | null | try | with |
| delete | function | return | | |
Words Reserved for Future Extensions:| abstract | double | goto | native | static |
| boolean | enum | implements | package | super |
| byte | export | import | private | synchronized |
| char | extends | int | protected | throws |
| class | final | interface | public | transient |
| const | float | long | short | volatile |
| debugger | | | | |
Other Identifiers to Avoid (as variable or function names):| arguments | encodeURI | Infinity | Object | String |
| Array | Error | isFinite | parseFloat | SyntaxError |
| Boolean | escape | isNaN | parseInt | TypeError |
| Date | eval | Math | RangeError | undefined |
| decodeURI | EvalError | NaN | ReferenceError | unescape |
| decodeURIComponent | Function | Number | RegExp | URIError |
Special Numeric Values:| Infinity | Special value to represent infinity |
| NaN | Special not-a-number value |
| Number.MAX_VALUE | Largest representable number |
| Number.MIN_VALUE | Smallest (closest to zero) representable number |
| Number.NaN | Special not-a-number value |
| Number.POSITIVE_INFINITY | Special value to represent infinity |
| Number.NEGATIVE_INFINITY | Special value to represent negative infinity |
Escape Sequences in String Literals:| \0 | The NUL character (\u0000) |
| \b | Backspace (\u0008) |
| \t | Horizontal tab (\u0009) |
| \n | Newline (\u000A) |
| \v | Vertical tab (\u000B) |
| \f | Form feed (\u000C) |
| \r | Carriage return (\u000D) |
| \" | Double quote (\u0022) |
| \' | Apostrophe or single quote (\u0027) |
| \\ | Backslash (\u005C) |
| \xXX | The Latin-1 character specified by the two hexadecimal digits XX |
| \uXXXX | The Unicode character specified by the four hexadecimal digits XXXX |
Built-in Javascript Object Types:| String | The String object is used to manipulate a stored piece of text |
| Date | The Date object is used to work with dates and times |
| Array | The Array object is used to store a set of values in a single variable name |
| Boolean | The Boolean object is used to convert a non-Boolean value to a Boolean value (true or false) |
| Math | The Math object allows you to perform common mathematical tasks |