関数とかの個人的なメモ

  • /**
     * @title 関数とかの個人的なメモ
     * @description 個人的なメモ
     * @include *
     */
    func = 
    {
    	/**
    	 * 
    	 */
    	xhr : {
    		/**
    		 * XHRする。 コールバック関数にはXMLHttpRequestを渡す。
    		 * 
    		 * @type {XMLHttpRequest}
    		 * @param {String}uri
    		 * @param {Function}success
    		 *            callback
    		 * @param {Function}error
    		 *            callback
    		 */
    		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 {Array}a
    	 *            Array
    	 * @param {Function}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 {String}uri
    	 *            読み込むファイル
    	 * @returns undefined
    	 */
    	require : (function(uri) {
    		if (!uri) {
    			return null;
    		}
    		e = document.createElement('script');
    		e.type = "text/javascript";
    		e.src = uri;
    		document.head.appendChild(e);
    		return undefined;
    	}),
    	/**
    	 * BlobのURIにして返す
    	 * @param {String}o
    	 *            もじ
    	 * @param {String}p
    	 *            text/html的なあれ
    	 */
    	Blob : (function(o){
    		var q=new Blob([0x30,0x31],{"type":p});
    		return window.URL.createObjectURL(q);
    	}),
    };
    
  • Permalink
    このページへの個別リンクです。
    RAW
    書かれたコードへの直接のリンクです。
    Packed
    文字列が圧縮された書かれたコードへのリンクです。
    Userscript
    Greasemonkey 等で利用する場合の .user.js へのリンクです。
    Loader
    @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
    Metadata
    コード中にコメントで @xxx と書かれたメタデータの JSON です。

History

  1. 2013/10/16 19:01:14 - 2013-10-16
  2. 2013/10/16 18:56:19 - 2013-10-16
  3. 2013/04/28 16:31:41 - 2013-04-28
  4. 2013/04/26 21:55:09 - 2013-04-26