|
1 2 3 4 5 6 7 8 |
function bool (val) { if(val == undefined) { return false; } else { return val; } } |
【JavaScript】変数のタイプが合っているか調べる
JavaScriptの変数のタイプが想定通りかどうかをtrue/falseで返します。
|
1 2 3 4 |
function is(type, obj) { var clas = Object.prototype.toString.call(obj).slice(8, -1); return obj !== undefined && obj !== null && clas === type; } |
使い方は
|
1 2 3 4 |
var val1 = 'ABC'; if( !is('Array', val1) ) { alert('配列ではありません'); } |
【JavaScript】JavaScriptファイルを動的に読みこむ
JavaScriptファイルを動的に読み込む関数です。
読み込んだ後、コールバック関数を呼ぶことができます。
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
function load_script(src, callback) { var done = false; var head = document.getElementsByTagName('head')[0]; var script = document.createElement('script'); script.src = src; head.appendChild(script); script.onload = script.onreadystatechange = function() { if(!done && (!this.readyState || this.readyState === "loaded" || this.readyState === "complete") ) { done = true; if(callback) { callback(); } script.onload = script.onreadystatechange = null; if ( head && script.parentNode ) { head.removeChild( script ); } } }; } |
【JavaScript】URLを自動的にリンクにする
文字列の中にURLを見つけたら自動的にAタグによるリンクに変換します。
|
1 2 3 4 |
function auto_link(val) { var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig; return val.replace(exp,"<i class='fa fa-globe'> </i><a target='_blank' href='$1'>$1</a>"); } |
【JavaScript】NULLエスケープ
あると重宝するNULLエスケープ関数
|
1 2 3 4 5 6 7 8 9 10 11 |
function nul(val, def) { if(def == undefined) { def = ''; } if(val == undefined || val == null || val == '') { return def; } else { return val; } } |
