/**
* @title 関数とかの個人的なメモ
* @description 個人的なメモ
* @include *
*/
Window.prototype.funcs = {
/**
* XHRする。 コールバック関数にはXMLHttpRequestを渡す。
*
* @param uri
* string
* @param success
* function
* @param error
* function
*/
get : function(uri, success, error) {
var xhr = new XMLHttpRequest();
xhr.open("GET", uri);
xhr.addEventListener('readystatechange', function(event) {
if (event.target.readyState == 4) {
if (event.target.status == 200) {
success(event.target);
} else {
error(event.target);
}
}
}, false);
xhr.send();
return xhr;
},
/**
* Perlのforeachっぽいあれ
*
* @param a
* Array
* @param f
* function function(a){}
* @returns Array fの値nの配列
*/
each : function(a, f) {
var l = a.length;
var i = 0;
var r = Array();
while (i < l) {
r[i] = f(a[i]);
i += 1;
}
return r;
},
/**
* javascriptをテキトーにつっこむ
* @param uri 読み込むファイル
* @returns 特になし\
*/
require : function(uri) {
if (!uri) {
return null;
}
e = document.createElement('script');
e.type = "text/javascript";
e.src = uri;
document.head.appendChild(e);
},
};