CKAN makes a few helpful objects and methods available for every JavaScript
module to use, including:

this.el, the HTML element that this instance of the object was
initialized for. A jQuery element. See this.options and this.el.

this.options, an object containing any options that were passed to the
module via data-module-* attributes in the template.
See this.options and this.el.

this.$(), a jQuery find function that is scoped to the HTML
element that the JavaScript module was applied to. For example,
this.$('a') will return all of the <a> elements inside the module’s
HTML element, not all of the <a> elements on the entire page.

This is a shortcut for this.el.find().

jQuery provides many useful features in an easy-to-use API, including
document traversal and manipulation, event handling, and animation. See
jQuery’s own docs for details.

this.sandbox, an object containing useful functions for all
modules to use, including:

this.sandbox.client, an API client for calling the API

this.sandbox.jQuery, a jQuery find function that is not bound to
the module’s HTML element. this.sandbox.jQuery('a') will return all the
<a> elements on the entire page.
Using this.sandbox.jQuery is discouraged, try to stick to
this.$ because it keeps JavaScript modules more independent.

The standard JavaScript window object. Using window in CKAN
JavaScript modules is discouraged, because it goes against the idea of a
module being independent of global context. However, there are some
circumstances where a module may need to use window (for example if a
vendor plugin that the module uses needs it).