備忘録チックに学習したことをまとめます。ES2015対応。
実行はnode.jsでやっています。node.jsの環境構築はこちら
Hello World
hw.js
console.log("Hello World!");
// Hello World!
変数
var
variable 文は変数を宣言し、任意でそれをある値に初期化する。
var.js
var message;
message = "Hello World!";
console.log(message);
// Hello World!
let
let 文はブロックスコープの局所変数を宣言し、任意でそれをある値に初期化する。
varはブロック外にもスコープを持つが、letはブロック外にスコープを持たない。
let.js
if(true){
var message = "in block var";
console.log(message);
// in block var
}
console.log(message); // ここでもmessageが参照できる。
// in block var
if(true){
let message2 = "in block let";
console.log(message2);
// in block let
}
console.log(message2); // ここではmessage2は参照できない
// ここでReferenceError
let2.js
var message = "out block var"
if(true){
var message = "in block var"; // 同じ変数となるため、上書きされてしまう。
console.log(message);
// in block var
}
console.log(message);
// in block var
var message2 = "out block let"
if(true){
let message2 = "in block let"; // ブロック内の固有の変数となる。
console.log(message2);
// in block let
}
console.log(message2);
// out block let
データ型
- 文字列
var str = "string";
- 数値
var num = 100;
- オブジェクト(関数・組み込みオブジェクト)
var obj = {hoge:"ho", fuga:"fuga"};
オブジェクト・関数については詳細は後述
- undefined : 定義されていない
- null : なにもない
nullとundefinedの違い
ここが参考になった
テンプレートリテラル
`(バッククォート)を利用することで改行コードなしで記述可。
tl.js
console.log(`line one
line two
line three`);
// line one
// line two
// line three