The best way of doing it is to use a namespacing object:
Code:
var ActiveXFunctions = {
frontPad : function(s, len, chr) {
for(var r = s.toString(); r.length < len; r = (chr || "0") + r);
return r;
},
group : function(arr, len) {
for(var i = 0, r = [], n = arr.length; i < n; ++i) {
if(i % len === 0)
r.push([]);
r[r.length - 1].push(arr[i]);
}
return r;
},
strToBin : function(str, charsiz) {
for(var i = 0, r = "", n = str.length; i < n; r += this.frontPad(str.charCodeAt(i++).toString(2), charsiz || 8));
return r;
},
binToStr : function(bin, charsiz) {
for(var i = 0, cs = this.group(bin.split(""), charsiz || 8), n = cs.length; i < n; cs[i] = String.fromCharCode(parseInt(cs[i++].join(""), 2)));
return cs.join("");
}
};
Then call them:
Code:
var bin = ActiveXFunctions.strToBin("Hello");
var str = ActiveXFunctions.binToStr(bin);
Bookmarks