Describes an expression value, which can be either an integer (the
usual case), a double-precision floating-point value, or a string.
A number type will typically have a string value that is the number
string before it was parsed into a number. If the number has no
string value then one will be generated by getStringValue().