勉強したことのメモ

webプログラマ見習いが勉強したことのメモ。

javascriptの注意点

      2014/07/03

javascriptにてチェックボックスのチェック状況をチェックを
ループでまわして確認した際、チェックボックス自体が1個だけの
場合はundefinedになる場合がある。

function delete_check(){
chkvalue = "";
for(i=0 ; i<document.form.mailCode.length ; i++){
if(document.form.mailCode[i].checked){
chkvalue += "\n\t" + document.form.mailCode[i].value;
}
}
if(chkvalue == ''){
alert('選択されていません。');
}else{
if(confirm('削除してよろしいですか?')){
document.form.submit();
}else{
return false;
}
}
}

jQueryで確認していくことで直った。

あとグローバル変数とローカル変数について、ちゃんと理解して
いなかったのでメモ。

■ローカル変数
関数内でvarで宣言したらローカル変数。
また、関数内でfunctionを作ったらそれはローカル関数。
関数内でのみ有効になる。
メモリリーク防止になる。

■グローバル関数
関数の外でvar宣言をする。
もしくはvarをつけずに変数宣言を行う。
どこでも使えるので便利。ただ、よそで使うことが無ければ
余計にメモリを食うだけ。

尚、何でかわからないけどIE8のみエラーが発生する、

というケースにあたり、調べたところIE8以下は対応していない

イベントハンドラだった(addEventListener)。

javascriptに限ったことでもブラウザに限ったことでもないが、

こういったケースもあるということを認識しておく。

 - javascript

  関連記事

javascript_logo_unofficial-300x300
javascriptのfor文で負荷軽減

javascriptで配列の数だけループをまわす際、 for (i=0; i&l ...

javascript_logo_unofficial-300x300
javascriptでゼロパティング

月日をゼロパディングしたかったけど PHPとは違い、そういった関数は無かったので ...

mzl.qobqfuxq
JavaScriptで住所から経度緯度を取得する

やりたかった事はformに住所を入れてsubmitする際に、javascript ...

javascript_logo_unofficial-300x300
JavaScriptで全角半角を判別の上で文字数カウントを行う

やりたかった事は「全角5文字・半角10文字以内の入力フォーム」 みたいなもの。 ...

javascript_logo_unofficial-300x300
javascriptでのエラーログ

PHPでのエラーログ取りが思いのほか便利だったので JSについても簡単にログ取り ...

javascript_logo_unofficial-300x300
3Dデータ(obj,stlファイル)をブラウザ上で表示する方法  

3Dデータをブラウザで表示させて、違う方向から見たり、縮小拡大をしたいという案件 ...

android_logo2-300x224
Android2.3でJavaScriptのエラー

Android2.3で関数が動かないといったエラーが発生していた。 担当外だった ...

javascript_logo_unofficial-300x300
マウスオーバーでの画像切り替えをJavaScriptで簡単に対応

マウスが要素にのった際に画像を切り替える処理を入れたかった。多分CSSの管轄なん ...

javascript_logo_unofficial-300x300
JavaScriptでFlashのバージョンを取得

既存のソースでFlashのバージョン取得を 行っているものがあり、使いそうなので ...

javascript_logo_unofficial-300x300
JavaScriptで連想配列を数値でソート

数字の大きい順でソートしたかったんだけど、 色々調べてhash.sort云々やっ ...