Execution of JavaScript Programs
There is no formal definition of a program
in client-side JavaScript. We can say that a JavaScript program
consists of all the JavaScript code in a web page (inline scripts,
HTML event handlers, and javascript:
URLs) along with external
JavaScript code referenced with the src
attribute of a <script>
tag. All of these separate
bits of code share a single global Window object. That means that they
all see the same Document object, and they share the same set of
global functions and variables: if a script defines a new global
variable or function, that variable or function will be visible to any
JavaScript code that runs after the script does.
If a web page includes an embedded frame (using the <iframe>
element), the JavaScript code
in the embedded document has a different global object than the code
in the embedding document, and it can be considered a separate
JavaScript program. Remember, though, that there is no formal
definition of what the boundaries of a JavaScript program are. If the
container document and the contained document are from the same
server, the code in one document can interact with the code in the
other, and you can treat them as two interacting parts of a single
program, if you wish. JavaScript in Interacting Windows explains
more about the global Window object and the interactions between
programs in separate windows and frames.
javascript:
URLs in bookmarklets exist outside of any document and can be thought of as a kind of user ...
Get JavaScript: The Definitive Guide, 6th Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.