作業が楽になる場合がある。
どういうことか
関数の作成と発火を別々のファイルでやりたい状況は普通にある。
また、基本的にjsは外部ファイルにまとめてるんだけど、一部の数値をphpと絡めたりしてphpファイル内に書きたいこともある。だからって関わる全部をphp側に書いちゃうとなかなかのボリュームでだるいし、セキュリティ的に微妙かもってこともある。
だから、ファイルを跨いで呼び出せたらいいよねっていう話。
phpだと関数とか変数をグローバルにして呼び出すみたいなのは当たり前にあるし。
やっていく
こういうかんじで。
<head>
<script src="https://code.jquery.com/jquery-3.6.2.min.js" integrity="sha256-2krYZKh//PcchRtd+H+VyyQoZ/e3EcrkxhM8ycwASPA=" crossorigin="anonymous"></script>
<script src="script.js"></script>
</head>
<body>
<button type="button">click</button>
<script>
function test(){
alert('aaaa');
}
</script>
</body>
$(function(){
$('button').on('click',function(){
if(confirm('マジで?')){
test();
}
})
})
慣れてるからjQueryだけどjsでも同じ話。
外部ファイルとはいえ上から読んでいく規則がある中でも、jsは関数の呼び出しが宣言よりも先にあっても大丈夫。
活用例
先日書いた記事が該当。
<script>にphpを挿入してる箇所があるけど、実際のところ最初の変数の宣言だけしかない。
大部分を別ファイルに逃がせるんで、かなりすっきりする。
別ファイルに書けば、特にこの場合は関数を作ってるので他のページでも使い回すことができる。
お得ですね。
まとめ的な
テクニカルではあるのだけど、こういうことができるようになると何よりも自分が楽になる。
手を抜ける、手間を省けるってことでプラスの面が多いので、お勉強が嫌いな人なら尚の事覚えやすいんじゃないでしょうか。どんどん横着して文字数を減らしてシンプルなコーディングができるといいですね。
コメント