# Validate JavaScript Intrinsic APIs (ecma-intrinsics)

This rule deals with the intrinsic APIs in JavaScript, more formally known as ECMAScript.

When Lightning Locker is enabled, the framework prevents the use of unsupported API objects or calls. That means your Aura components code is allowed to use:

- Features built into JavaScript (“intrinsic” features)
- Published, supported features built into the Aura Components programming model.
- Published, supported features built into Lightning Locker *SecureObject* objects

What exactly are these “intrinsic APIs”? They’re the APIs defined in the [ECMAScript Language Specification](https://tc39.github.io/ecma262/). That is, things built into JavaScript. This includes Annex B of the specification, which deals with legacy browser features that aren’t part of the “core” of JavaScript, but are nevertheless still supported for JavaScript running inside a web browser.

Note that some features of JavaScript that you might consider intrinsic—for example, the `window` and `document` global variables—are superceded by *SecureObject* objects, which offer a more constrained API.

## Rule Details

This rule verifies that use of the intrinsic JavaScript APIs is according to the published specification. The use of non-standard, deprecated, and removed language features is disallowed.

## Further Reading

- [ECMAScript specification](https://tc39.github.io/ecma262/)
- [Annex B: Additional ECMAScript Features for Web Browsers](https://tc39.github.io/ecma262/#sec-additional-built-in-properties)
- [Intrinsic Objects (JavaScript)](https://msdn.microsoft.com/en-us/library/4zx5dkc9\(v=vs.94\).aspx)

**See Also**

- [Validate Aura API (aura-api)](/docs/platform/aura-platform/guide/cli-rules-aura-api.md)
- [Validate Aura Component Public API (secure-component)](/docs/platform/aura-platform/guide/cli-rules-secure-component.md)
- [Validate Secure Document Public API (secure-document)](/docs/platform/aura-platform/guide/cli-rules-secure-document.md)
- [Validate Secure Window Public API (secure-window)](/docs/platform/aura-platform/guide/cli-rules-secure-window.md)
