勉強備忘録:ドットインストール詳解JavaScriptオブジェクト編

1.配列

・配列をconstで定数宣言しても、要素は書き換えられる。
・unshift()→頭の要素に追加、push()→末尾に追加
 shift()→頭から削除、pop()→末尾から削除
・splice→既存の要素を取り除いたり、置き換えたり、
 新しい要素を追加したりすることで、配列の内容を変更
 変更した配列を戻り値として返す。
 splice(start, deleteCount, item1, item2, ...)
 start…配列を変更する開始位置を表すインデックス
 deleteCount…配列の start から取り除く古い要素の数を示す整数
 (省略された場合は、削除しない)
 item1, item2…配列に追加する要素。startから開始。
 要素を指定しなかった場合、 splice() は単に配列から要素を取り除く。
・スプレッド構文(...)
 配列式や文字列などの反復可能オブジェクトを、
 0個以上の引数 (関数呼び出しの場合) や
 要素 (配列リテラルの場合) を期待された場所で展開する。
 function名(...配列名)
 [a,b,...配列名]など
・分割代入(オブジェクトでも使える)
 配列の要素を抜き出して別の変数に展開したい時、
 一括で代入することができる。
・レスト構文
 分割代入との組み合わせで、配列から指定した数の要素だけ抜き出して、
 残りを1つの配列として受け取ることができる。  
・スプレッド構文、レスト構文、分割代入は、オブジェクトでも使える。 
・配列名.forEach((配列の要素,index)=>{})※実は奥が深い
・map→与えられた関数を配列のすべての要素に対して呼び出し、
 その結果からなる新しい配列を返す。
 map((配列要素)=>{要素に対して呼び出される処理})
・filter→与えられた関数によって実装されたテストに合格したすべての
 配列要素からなる新しい配列を返す。
 filter((配列の要素)=>{条件式など})

2.オブジェクト

・const 名称 ={キー:値,キー:値}
 キー:値のセットはプロパティ
・object.keys();→キーを配列で取得。その配列からキーを取得。
 object[キー]でキーに対応する値を取得
・オブジェクトや配列は、コピーしても格納した場所がコピー
 されるだけで、複製はされない。
 複製する場合は、スプレッド演算子を使う。
 let x = [a,b]
 let y = [...x]

3.文字列操作

・length→文字の長さを取得。
・substring()→第一引数から第二引数の手前までの部分文字列を取得。
・名称[i]→i番目の文字を取得。
・join→配列の文字列を結合。間に挿入する文字を指定。
・split→文字列を分割して、配列に格納。区切り文字指定。
・toUpperCase→大文字に変える。

4.数値操作

・Math.floor→小数切り捨て
・Math.ceil→小数切り上げ
・Math.round→四捨五入
・toFixed()→小数〇桁までを返す
・Math.random→0~1までの乱数を返す

5.日時

・new Date()で、現在日時取得(タイムゾーンに依存)。
 引数を指定すれば、指定した日付データを作成。
・日付オブジェクトに対し、get〇〇関数で、個々の年月日時を取得可能。
・getTime()で、タイムゾーンに依存しないUTCを取得。

6.alart,confirm

・alart()→警告のみ。
・confirm()→確認。選択結果をtrue/falseで返す。

7.タイマー処理

・setInterval(関数,ミリ秒)ミリ秒ごとに関数を実行。
・setTimeOut(関数,ミリ秒)ミリ秒後に、一回実行する。
・繰り返し処理において、setIntervalの場合は、一定期間で処理する。
 setTimeOutの場合は、処理が終わってから次の処理が始まる。

8.例外処理

・try{}catch(e){}構文でキャッチする。

9.クラス

・クラスから生成されるオブジェクトはインスタンス。
・先頭は大文字
・constructorでプロパティ初期化。(引数指定可)
・インスタンスをクラス内では、thisと呼ぶ。
・直接プロパティのアクセスしない。→カプセル化。
・動的メソッド→インスタンスを介して呼び出びださずにクラスから
 呼び出すメソッド。staticを目指す。メソッド内でthisは使えない。
・extendsで継承。

10.感想

スプレッド構文、レスト構文、分割代入あたりを使いこなせると、
よいプログラムが書けそう!

この記事が参加している募集

この記事が気に入ったらサポートをしてみませんか?