JScript incorporates almost all of the features of the ECMAScript Edition 3 Language Specification. In addition, JScript is being developed in conjunction with ECMAScript Edition 4 and incorporates many of the proposed features of that language as well. The tables below list the features of ECMAScript 3 and the proposed ECMAScript 4 features that JScript supports.
Category
ECMAScript 3 Feature/Keyword
Array Handling
Arrayconcat,join, length, reverse, slice, sort
Assignments
Assign (=),Addition Assignment (+=),Bitwise AND Assignment (&=),Bitwise OR Assignment (|=),Bitwise XOR Assignment (^=),Division Assignment (/=),Left Shift Assignment (<<=),Modulus Assignment (%=),Multiplication Assignment (*=),Right Shift Assignment (>>=),Subtraction Assignment (-=),Unsigned Right Shift Assignment (>>>=)
Booleans
Boolean, true, false
Comments
/*...*/ or //
Constants/Literals
NaN null,Infinity undefined
Control flow
break continue do...while for for...in if...else Labeled return switch while
Dates and Time
Date getDate, getDay, getFullYear, getHours, getMilliseconds, getMinutes, getMonth, getSeconds, getTime, getTimezoneOffset, getYear, getUTCDate, getUTCDay, getUTCFullYear, getUTCHours, getUTCMilliseconds, getUTCMinutes, getUTCMonth, getUTCSeconds, setDate, setFullYear, setHours, setMilliseconds, setMinutes, setMonth, setSeconds, setTime, setYear, setUTCDate, setUTCFullYear, setUTCHours, setUTCMilliseconds, setUTCMinutes, setUTCMonth, setUTCSeconds, toGMTString, toLocaleString, toUTCString, parse, UTC
Declarations
Function new this var with
Error Handling
Error, description, number, throw, try...catch
Function Creation
caller, Function arguments, length
Global Methods
Global escape, unescape eval isFinite, isNaN parseInt, parseFloat
Math
Math abs, acos, asin, atan, atan2, ceil, cos, exp, floor, log, max, min, pow, random, round, sin, sqrt, tan, E, LN2, LN10, LOG2E, LOG10E, PI, SQRT1_2, SQRT2
Numbers
Number MAX_VALUE, MIN_VALUE NaN NEGATIVE_INFINITY, POSITIVE_INFINITY
Object Creation
Object new constructor, instanceof, prototype, toString, valueOf
Operators
Addition (+), Subtraction (-) Modulus arithmetic (%) Multiplication (*), Division (/) Negation (-) Equality (==), Inequality (!=) Less Than (<), Less Than or Equal To (<=) Greater Than (>) Greater Than or Equal To (>=) Logical And(&&), Or (||), Not (!) Bitwise And (&), Or (|), Not (~), Xor (^) Bitwise Left Shift (<<), Shift Right (>>) Unsigned Shift Right (>>>) Conditional (?:) Comma (, ) delete, typeof, void Decrement ( -- ), Increment (++),Strict Equality (===), Strict Inequality (!==)
Objects
Array Boolean Date Function Global Math Number Object RegExp Regular Expression String
Regular Expressions and Pattern Matching
RegExp index, input, lastIndex, $1...$9, source, compile, exec, test Regular Expression Syntax
Strings
String charAt, charCodeAt, fromCharCode indexOf, lastIndexOf split toLowerCase, toUpperCase lengthconcat, slice match, replace, search anchor, big, blink, bold, fixed, fontcolor, fontsize, italics, link, small, strike, sub, sup
Proposed ECMAScript 4 Feature/Keyword
Class-Based Objects
class, extends, implements, interface,function get, function set, static,public, private, protected, internal,abstract, final,hide, override,static
const
Enumerations
enum