プロゲートのJavaScriptを始めました。
現在JavaScript学習コースⅢまで終了です。
先にPHPを学習していたため変数・定数・if文・for文・関数などはわかるので、ここまで割とサクサク進めました。
ただ、JavaScriptとPHPでは微妙に書き方が違うのでまぎらわしい…。
そこで、JavaScriptとPHPの書き方の違いを簡単にまとめてみました。
JavaScriptとPHPの書き方の違い。
ここまで学んだ時点での、JavaScriptとPHPの書き方の違いは以下です。
console.log()とecho
出力する際のコードが、
- JavaScriptは console.log(“こんにちは”);
- PHPは echo ‘こんにちは’;
echoの場合は()がいりません。半角スペースが入ります。
(PHPの文字列はシングルクオーテーション「’」ダブルクオーテーション「”」どちらでもよい)
文字列の連結
- JavaScriptは ”私は” + “鈴木です”
- PHPは ’私は’ . ‘鈴木です’
JavaScriptは「+」なのに対し、PHPは「.」ですね。
変数
- JavaScriptは let name=”鈴木”;
- PHPは $name=’鈴木’;
定数はJavaScriptもPHPも同じで const name=”鈴木” みたいです。ただプロゲートのPHPでは定数はやらなかったような…。
テンプレートリテラルと変数展開。
文字列の中に変数や定数を埋め込む方法を、JavaScriptでは「テンプレートリテラル」、PHPでは「変数展開」とプロゲートでは習いました。
- JavaScriptは `こんにちは${name}さん`
- PHPは ”こんにちは{$name}さん”
まぎらわしいですね。$の位置が違います。
JavaScriptはバッククォート「`」で囲みます(シングルクオーテーション「’」ではありません)。
PHPはダブルクォーテーション「”」で囲みます(シングルクォーテーション「’」では変数展開されない)。
配列
- JavaScriptは const names=[“鈴木”,”田中”,”佐藤”];
- PHPは $names=array(‘鈴木’,’田中’,’佐藤’,);
JavaScriptは[]で囲む、PHPはarrayを付けます。
関数
- JavaScriptは const 定数名=function(){処理};
- JavaScriptのアロー関数だと const 定数名=()=>{処理};
- PHPは function 関数名(){処理};
これもまぎらわしいですね。JavaScriptだと関数名というものはなく、定数(const)に代入するようになっているみたいです。
switch文のbreakってなぜ必要?
switch文のbreakってなぜ必要なの?って疑問に思いました。
だって、別にbreakがなくても成り立ちそうですよね。
例えば下記のようなコード↓
const dice=2;
switch(dice){
case 1:
console.log("1つ進め");
break;
case 2:
console.log("2つ進め");
break;
case 3:
console.log("3つ進め");
break;
}
breakを書かないと、ケースが一致したとしてもその下のすべての処理も実行されてしまいます。
でも、「breakを書かなくても、ケースが一致した所で終わりにすればいいじゃん」って思いません?
これについて調べると、ありました↓
http://akutaka00.blog102.fc2.com/blog-entry-35.html
要するに、「breakを書かないとその下の処理まで実行されてしまう」という仕組みをうまく利用して、あえてbreakを書かない場合もあるんだそうです。
だから、breakを書かなくても自動で処理を終わらせてしまうと、都合が悪いんですね。
プロゲート学習はノートを書こう。
私はプロゲートで学習する時、ノートを書いています。
具体的にはスライドのコードや、演習で気になったコード、ちょっとしたメモなど。
プロゲートって課金期間が終わると見れなくなってしまうので、なにもメモしていないと忘れてしまいます。特に学習が終わってしばらくその言語を使わないと、すっかり忘れてしまいます。
全てを書き写す必要はありませんが、基本文法や大事な点、気になるコードはメモしておいた方がいいです。それに、メモしていた方が演習の時にそれを見ながらできるので早いかもしれません。
コメント