This AI is still in early stages of development.
Check.ANY_VERSION
Skip version checking for a dependency check...
Notes
Use Check.ANY_VERSION as a replacement for a version number on any function that checks dependencies or for dependencies listed in a Dependency Descriptor Object.
Examples
Example of incorrect use...
// DO NOT use Check.ANY_VERSION in a Self Descriptor Object
var self = {file:"bar.js", ver: Check.ANY_VERSION); // ErrorExamples of correct use...
if (Check.has("foo.js", Check.ANY_VERSION)) {
// code here will run if any version of foo.js is loaded
}
// same as...
if (Check.has("foo.js")) { // version defaults to Check.ANY_VERSION
// code here will run if any version of foo.js is loaded
}
var dependencies = {"foo.js": Check.ANY_VERSION};
// boz.js will be loaded (if it's path is in Check.paths) when
// any version of foo.js becomes available
Check.doWhen(dependencies, self, "boz.js", Check.LAZY_LOAD);
// will validate if any version of foo.js is loaded
// will throw an error if foo.js is not loaded
Check.required(dependencies, self);Strict vs. normal equality...
var version = Check.versionOf("foo.js");
if (version == Check.ANY_VERSION) {
// some version is loaded
// because normal equality used (== instead of ===)
}
if (version === Check.ANY_VERSION) {
// will never get called
// because strict equality used (=== instead of ==)
}
// switch statements also use strict equality
switch (version) {
case Check.NOT_LOADED: {
// will match if foo.js isn't loaded
break;
}
case Check.ANY_VERSION: {
// will *never* match
break;
}
case 1.0 {
// will only match if v1.0 of foo.js is loaded
}
default: {
// will match if any version of foo.js is loaded
break;
}
}