Native feature (Definition)

That which is supported in the base level of the language.

Native features are those that are defined in the ECMA-262 standard (ECMAScript). That is anything that is fundamentally and solely JavaScript.

Hooks to activate some piece of hardware or database loading facilities and document objects are not considered fundamental and are therefore not native features of the language.

Adding two numbers together, instantiating objects with a new operator, or concatenating strings are fundamental, even if the objects being instantiated are host objects. The functionality is native because the new operator is a native capability of the language. You can instantiate any object of any type with the new operator as long as there is a constructor function available.

However, some implementations may provide enhancements to the native features without them being classified as host environment capabilities. These might be additional operators or extra function in the Math object, for example. Maybe you could do more sophisticated things with String objects. This all fits under the category of enhancements to the fundamental language.

See also:ECMAScript, JavaScript language

Cross-references:

Wrox Instant JavaScript - page - 12