JavaScript ふりかえり [1]

JavaScript 本格入門 〜モダンスタイルによる基礎から現場の応用まで』をよんで、遠い記憶である、JavaScript に関する記憶を呼び覚ましていきます。
前回学習したときは、かなり大雑把で FizzBuzz とフィボナッチ かいて はいおわり的な感じだったので、今回はしっかり 学び直していこうと思います。 一番最初からやっていきますー。

変数の宣言

let と var

変数の宣言のための命令として、 letvar が存在する.以下に違いを記載します。

重複

let は ブロックスコープを意識する変数宣言命令。
また、一度 let を 用いて 宣言した変数(オペランド)は、再度宣言することができません。
宣言しようとすると、以下のようになります。

let apple;
//undefined
let apple;
//VM1158:1 Uncaught SyntaxError: Identifier 'apple' has already been declared at <anonymous>:1:1

var は 重複を許可する。 以下のようになります。

var hoge;
//undefined
var hoge;
//undefined

ブロックスコープを認識する

let は ブロックスコープを 意識する宣言命令。
ざっくりと let のほうが細かくスコープを 設定できる、ということで解釈しておけばオーケーらしいです。

データ型

動的型付けなんで型はよわいです。弱いんですけど、型自体はあります。
左右の値を評価する == 演算子だと型を意識しないです。型を意識した評価を行いたいときは === を使いましょう。 たとえば、

// 以下は true です。
1 == '1';
// true
// 以下は、false です。
1 === '1';
// false

と言った感じです。

振り返り

久しぶりにやりましたが、普段Rubyばっかり書いているので新鮮でした。
あと今読んでいるこの本、結構わかりやすくて気に入っています。ただ、本格入門と題名についているのですが、内容はプログラミング初心者は完全にお断りな内容です。いったん他の言語を習得しているくらいでないときつそうです。購入を検討している方は気をつけてください。
次は、 繰り返し構文からやっていきます。