【JavaScript授業三日目】オブジェクト、演算子
オブジェクト
●オブジェクトとは
・配列と一緒で、複数の値を管理する
・配列との違いは、箱に名前を付けることができる
・「length」が存在しない
・配列と使い分けるポイントは「length」を使わず、箱を名前で管理したいとき
配列リテラル:[ 値, ・・・ ]
オブジェクトリテラル:{ 部屋の名前:値, ・・・ }
プレイヤーに関する複数の情報をオブジェクトで管理
・オブジェクト内にある箱(変数)を「プロパティ」と呼ぶ
・オブジェクト内のプロパティを参照する場合は「変数名 .(ドット) プロパティ」
※「.」は「の中にある」という扱い
・右辺でも左辺関係なく、プロパティ使える
・配列とオブジェクトは組み合わせ可能
1次元目・・・配列:人数管理
2次元目・・・オブジェクト:キャラクター情報管理
●あるあるミス↓
オブジェクトは、部屋の名前が必要なのでもしこうするなら↓
document.getElementById('imgのID名')
↑ID名でHTML要素を取得:今回はimg要素
setAttribute("変更する属性名", 変更する属性値)
↑対象要素の属性値を変更する処理
setAttribute('src', player.aliveImg);
↑対象要素のsrc属性を対象に変更、オブジェクト内の画像パスに変更
●「length」もプロパティ ※配列も特殊なプロパティ
演算
データ型とは
・基本型:変数を直接入れる値
□文字型、数値型、真偽型、未定義型、Null型
・参照型:アドレス経由の値
□オブジェクト型、関数型
「0」と「null」と「undefined」の違い
トイレットペーパーで例えると
「0」:トイレットペーパーの紙がなくなった状態
「null」:トイレットペーパーの芯が設置されていない状態
「undefined」:そもそもトイレットペーパー掛けるところがない状態
※JSの「undefined」エラー時は、芯が設置されていない状態に近い
・Undefined型
・String型
・Number型
・Boolean型
・Object型
・Object型
・Null型
※プラウザによって型の表示がかわる!クロムは「Null型」を「Object型」とみる
null:取得するはずのオブジェクトがなかった
undefined:変数宣言後値を入れてない
エラーメッセージで表示されるundefined:変数が定義されていない