・変数宣言と定数宣言
let
は変数宣言である。あとから値を再代入することができる。
const
は定数宣言である。あとから値を再代入することができない。
・メモリの使い方
プログラム上で使われる値はすべてメモリ上に保管されている。⇒メモリ上の場所はアドレスという数値で表現される。
再代入のイメージ
ex.js
let playerName = "ルフィ";
playerName= "Luffy";
このイメージにように変数に別の値が代入されると、変数のアドレスが変化する。そして2番地にある"ルフィ"という値は、他の使用箇所がない場合メモリから削除される。
※定数は大文字で表す。 例: const PLAYER_NAME = "吉田"
・リテラル
・BigIntリテラル
`12345678910n` :このように数値にnが付いた場合、BigInt型のリテラルを表す。・オブジェクトリテラル
```JavaScript:javascript.js { name: "ルフィ", anotherName: "麦わら" } ```このように{ }
は、新しいオブジェクトの作成を行う。
・配列リテラル
`[1, 2, 3, 4, 5]` このように[ ]は、新しい配列の作成を行う。・正規表現リテラル
`/ab+c/` このように/ /は、新しいRegExpオブジェクトの作成を行う。・関数リテラル
javascript.js
let calculation = function () {
//処理を書く
};
このようにfunction() { };
は、新しい関数の宣言を行う。
・テンプレートリテラル
テンプレートリテラルの例
const personName = "ルフィ";
console.log(`こんにちは! ${personName}`);
>こんにちは!ルフィ
このようにバッククォート(`[SHIFT+@])で、${変数名}を囲うと変数の値を文字列に挿入できる。
・オブジェクト
オブジェクトとは、変数を管理する入れ物のようなものである。・オブジェクトの初期化
オブジェクトを使うには、オブジェクトの初期化をする必要がある。※初期化とは、何らかの機能を使用可能な状態にすること
ObjectInit.js
let objectName = {
//プロパティと値は":"で区切る。
プロパティ1: 値1;
プロパティ2: 値2;
プロパティ3: 値3;
}
・ドット記法
ドット記法とは、オブジェクトとプロパティをドットでつなぐことでオブジェクトの値の取得・変更ができる。ドット記法:オブジェクト名.プロパティ名
javascript.js
let pirates = {
name: { first: "Luffy", middle: "D", last: "Monkey" },
anotherName: "麦わら";
};
//genderという値の追加
pirates.gender = "男";
console.log( pirates.anotherName);
> name: { first: "Luffy", middle: "D", last: "Monkey" }, anotherName: "麦わら", gender: "男"}
console.log( pirates );
> {}
・ブラケット記法
ブラケット記法では、オブジェクトの後ろに [ ]を続けて、その中に文字列でプロパティ名を記述する。ブラケット記法:オブジェクト名["プロパティ名"]
変数を使ったプロパティ名の指定
javascript.js
const piratesMember = {
member1: "ルフィ";
member2: "ゾロ";
}
const keyBase = "member";
console.log(members[ keyBase + "1"]);
> ルフィ
console.log(members[ keyBase + "2"]);
> ゾロ
オブジェクトリテラル内のブラケット記法
javascript.js
const keyBase = "member";
let members = {
[ keyBase + "1"]: "ルフィ";
[ keyBase + "2"]: "ゾロ";
}
console.log (members);
> { member1: "ルフィ", member2: "ゾロ" }
プロパティの削除
プロパティの削除はdelete
でできる。
・メソッド
関数とは、特定の処理を行う機能をもつもの。メソッドとは、関数をもつオブジェクトのこと。
オブジェクトの定義と実行
javascript.js
//オブジェクトの初期化時にメソッドを定義
let オブジェクト名 = {
プロパティ名: function( [ 引数 ] ) {
//処理を書く
}
//既存のオブジェクトにメソッドを追加
オブジェクト.プロパティ = function( [ 引数 ] ) {
//処理を書く
}
//メソッドの実行
オブジェクト.プロパティ( [ 引数 ] );
}
・シンボルとは
シンボルとは、他の値と重複しないようにプロパティを設定するためのもの。SQLでいう"unique"?・JavaScriptのデータ型の特徴
JavaScriptは、プログラムの実行時に値が設定された時点で自動的に決定されるという動的型付け言語である。それに対してJavaやC言語は、コードを書くときにデータ型を宣言する必要があるという静的型付け言語である。
javascript.js
//どちらもletで宣言できる
let number = 1;
let member = "吉田";
j.java
//数字はint、文字列はStringでないとエラーがでる。
int number = 1;
String member = "吉田";
・データ型の確認
JavaScriptでデータ型を確認するには、typeofを使う。型変換の方法
関数 | 説明 | 例 |
---|---|---|
Number( 値 ) | 数値へ変換 | Number ("1") |
Boolean ( 値 ) | 真偽値へ変換 | Boolean(1) |
String ( 値 ) | 文字列へ変換 | String(true) |
BigInt ( 値 ) | BigInt型へ変換 | BigInt(true) |
・暗示的な型変換
JavaScriptでは、型が自動的に変換されることがある。例えば、 1 + "2" のような足し算の場合、数値は文字列化する
1 - "2" のような引き算の場合、文字列は数値化する。
【参考】 独習Javascript 新版 著:外村将大