How to use it¶
Loading the module¶
Quanah is versatile enough to run in any JavaScript environment, but it can be
tricky to figure out how to do it in a given environment. While by no means
exhaustive, the following directions cover most of the common environments. The
main idea is to demonstrate how to load Quanah and store a reference to it as
quanah
.
ArangoDB shell¶
var quanah = require("quanah");
Google D8 / V8 shells¶
load("quanah.js");
var quanah = QUANAH;
JavaScriptCore shell¶
load("quanah.js");
var quanah = QUANAH;
jrunscript¶
load("quanah.js");
var quanah = QUANAH;
MongoDB shell¶
load("quanah.js");
var quanah = QUANAH;
Mozilla Rhino¶
load("quanah.js");
var quanah = QUANAH;
Mozilla Spidermonkey shell¶
load("quanah.js");
var quanah = QUANAH;
Node.js¶
Node.js is a server-side JavaScript environment for writing high-performance networking applications, and it is arguably the greatest recent source for innovation in asynchronous programming outside of the web browser.
var quanah = require("./quanah");
PhantomJS¶
var quanah = require("./quanah");
RingoJS¶
var quanah = require("./quanah");
Web browsers¶
Browsers can be the easiest or hardest to load external code with, depending on the strategy that you choose. The easiest route is to add one line to an HTML page:
<script src="quanah.js"></script>
Then, the programs that use Quanah should be loaded in the same way, by lines that occur later in the page. To reference Quanah, those programs only need to contain the following:
var quanah = QUANAH;
To load Quanah dynamically is more complicated, and it demonstrates nicely why Quanah itself is so useful:
var script = document.createElement("script");
script.onload = function () {
var quanah = QUANAH;
// (your code goes here)
};
script.src = "quanah.js";
document.body.appendChild(script);
The problem with the second strategy is that it requires some extra knowledge about asynchronous programming, which is precisely what Quanah was originally designed to simplify.