FGlo開発日誌

FGlo開発日誌/PHP MYSQL HTML HTML5

JavaScript中級TIPS

文字列リテラル

HTMLを含む文字列を生成する際に便利なため、囲む時はシングルクォート'hoge'がよい

セミコロン

末尾にセミコロンをつけなくても解釈してくれるが、バグを生む可能性があるのでセミコロンはつけるように習慣化する

ES6のclass記法のメソッド末尾にはセミコロン不要

同値比較

基本的に===をつかう。==だと寛容過ぎる解釈のため、バグを生むことがある。

短絡評価

hogeFuncの引数にtrue相当の値が入ってきた場合、
||の右側は読まれない。

hogeFuncの引数にfalse相当の値が入ってきた場合、
false, null, undefined, NaN, "", 0
||の右側を読みにいく。

function hogeFunc(e){
    e || console.log('piyo');
}
hogeFunc(1); // 何も出力されない。もし短絡評価がなければ右側も評価されるのでpiyoが出力される
hogeFunc(); // piyoが出力される

こういう使い方も

function hogeFunc(e){
    var hoge = e || 1;
    console.log(hoge);
}
hogeFunc(5); // 5
hogeFunc(); // 1