// 空判定
function _empty(v){
if(v == null || v == '' || v=='0'){
return true;
}else{
if(typeof v == 'object'){
if(Object.keys(v).length == 0){
return true;
}
}
return false;
}
}
検証
let f_num = Number.parseFloat('-123.456');
let i_num = Number.parseInt('12345');
数値チェックの検証
Demo| ノート | 値 | isNaN | !isNaN | isFinite | Number.isNaN | Number.isFinite | Number.isInteger |
|---|---|---|---|---|---|---|---|
| 自然数 | 1000 | false | true | true | false | true | true |
| 文字列型の数字 | 900 | false | true | true | false | false | false |
| 小数値 | 0.01 | false | true | true | false | true | false |
| 文字列型の小数値 | 0.01 | false | true | true | false | false | false |
| 負の自然数 | -900 | false | true | true | false | true | true |
| 文字列型の負の小数値 | -0.01 | false | true | true | false | false | false |
| 数値型の0 | 0 | false | true | true | false | true | true |
| 文字列型の0 | 0 | false | true | true | false | false | false |
| 空文字 | false | true | true | false | false | false | |
| undefined | undefined | true | false | false | false | false | false |
| null | null | false | true | true | false | false | false |
| 数字ではない | abcd | true | false | false | false | false | false |
| 半角スペース | false | true | true | false | false | false | |
| bool型のtrue | true | false | true | true | false | false | false |
| bool型のfale | false | false | true | true | false | false | false |
| NaN | NaN | true | false | false | true | false | false |
/**
* 数値変換
*
* @param any value 値
* @return float 数値
*/
function numConv(value){
if(value == null) value = 0;
if(isNaN(value)){
value = 0;
}else{
value = value * 1;
};
return value;
}
| 関数 | 説明 |
|---|---|
| console.log(hoge); | コンソール画面に出力する |
| console.dir(obj); | オブジェクトのダンプを出力する |
| console.trace(); | トレースを出力。呼び出し元がわかる。 |
$(".chk_sel").prop({'checked':true}); // チェックを入れる。
$(".chk_sel").prop({'checked':false}); // チェックをはずす。
$(".chk_sel").prop({'checked':1}); // チェックを入れる。
$(".chk_sel").prop({'checked':0}); // チェックをはずす。
var num=12345.6789; var str=num.toString();
var str="12345.6789"; var num=str * 1;
var obj={};
obj['x']=20;
obj['y']=21;
console.dir(obj);
var obj={};
obj.x=20;
obj.y=21;
console.dir(obj);
var obj={};
obj[0]=20;
obj[1]=21;
console.dir(obj);
function is_alpha_numeric(str)
{
return /^[a-zA-Z0-9]+$/.test(str);
}
function is_alpha_numeric2(str)
{
return /^[a-zA-Z0-9_\-]+$/.test(str);
}
サンプル
var ary=[1,2,3,4,5,6,7,8,9,10];
//★5以上を抽出するフィルター
var ary2=ary.filter(function(value, index, ar){
return (value >= 5);//条件に一致するのみ値のみ新しい配列にセット。条件外は除外。
});
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta name="google" content="notranslate" />
<title>filter(フィルター)の使い方</title>
<link rel="stylesheet" type="text/css" href="common1.css" />
<script src="jquery-1.11.1.min.js"></script>
<script>
$(document).ready(function(){
var ary=[1,2,3,4,5,6,7,8,9,10];
//★5以上を抽出するフィルター
var ary2=ary.filter(function(value, index, ar){
return (value >= 5);
});
$("#a1").html(ary.join(","));
$("#a2").html(ary2.join(","));
});
</script>
<style type="text/css">
</style>
</head>
<body>
<div id="page1">
<h1 id="header">filter(フィルター)の使い方</h1>
<div class="container" >
<div class="sec1">
<div>フィルター前</div>
<div id="sec1-1"></div>
<hr>
<div>フィルター後(5以上でフィルターをかける)</div>
<div id="sec1-2"></div>
</div><!-- sec1 -->
</div><!-- content -->
<div id="footer">(C) kenji uehara 2014/08/05</div>
</div><!-- page1 -->
</body>
</html>
サンプル
/**
* SELECTのオプション要素にリストの値をセットする
* @param selElm SELECT要素
* @param list リスト。 リストの構造→ [キー] = テキスト
* @param value 始めの選択値【省略可】
* @param empty_text 空選択肢のテキスト【省略可】
*/
function setSelectOption(selElm,list,value,empty_text){
var ops_str='';
if(!_empty(empty_text)){
ops_str = "<option value=''>" + empty_text + "</option>"
}
for(var i in list){
var text = list[i];
var selected = '';
if(i == value){
selected = 'selected';
}
ops_str += "<option value='" + i + "' " + selected + ">" +
text + "</option>";
}
selElm.html(ops_str);
}
HTML
<select id="select1" onchange="selectChange()" ></select><br>
<button type="button" class="btn btn-primary" onclick="dynamicChange(1)">選択肢変更1</button>
<button type="button" class="btn btn-primary" onclick="dynamicChange(2)">選択肢変更2</button>
<div id="res"></div>
JavaScript
let g_value;
function dynamicChange(no){
let options = getOptions(no);
let options_str = '';
for(let key in options){
let name = options[key];
options_str += `<option value='${key}'>${name}</option>`;
}
$('#select1').html(options_str);
$('#select1').val(g_value);
}
function getOptions(no){
let options = null;
if(no==1){
options = {
'kani':'カニ',
'neko':'ネコ',
'buta':'ブタ',
'sika':'シカ',
'wani':'ワニ',
};
}else if(no==2){
options = {
'hiratakuwagata':'ヒラタクワガタ',
'miyamakuwagata':'ミヤマクワガタ',
'neko':'ネコ',
};
}
return options;
}
function selectChange(){
let value = $("#select1").val();
$('#res').html(value);
g_value = value;
}