読んでみた!JavaScript の概要!その17

Predefined Core Objects - JavaScript | MDN


Booleanオブジェクト

プリミティブなtrue、falseとオブジェクトのtrue、falseは混同させない。

Dateオブジェクト

Dateオブジェクトにはメソッドはあるがプロパティはない。 日付は1970年1月1日 00:00:00 を基準にしている。

var time = new Date(); でDateオブジェクトを作成できる。

残り日数のやつはよくわからなかったからあとでみる…

読んでみた!JavaScript の概要!その16

Predefined Core Objects - JavaScript | MDN

配列の続き


多次元配列

配列は入れ子にすることができる。

["[0,0]", "[0,1]", "[0,2]", "[0,3]"] ["[1,0]", "[1,1]", "[1,2]", "[1,3]"] ["[2,0]", "[2,1]", "[2,2]", "[2,3]"] ["[3,0]", "[3,1]", "[3,2]", "[3,3]"]

配列上のオブジェクトはちょっとわからないから保留

配列内法

配列を別のコンテンツにして新しい配列をつくる

読んでみた!JavaScript の概要!その15

Predefined Core Objects - JavaScript | MDN - 配列の続き


iternative method コールバック関数を引数にとるメソッドは様々な方法で反復処理をおこなう 各メソッドはthisObjectと呼ばれる省略可能な第2引数をとる。 thisObjectがある場合は、コールバック関数の中でthisが使える。 ない場合はグローバルオブジェクトwindow!

く、くろーじゃー???その1

クロージャ - JavaScript | MDN

クロージャーの使用

関数のところでクロージャーというものがでてきたが、よくわからなかったので調べてみる。関数の入れ子になってて強力な機能だということは把握。

普通に動くのが不思議だったけど、これはレキシカルスコープってやつで ふつうに動いた。

レキシカルスコープはこのブログの説明がわかりやすかった。 外側にあるものは内側は見えないけど、内側のものは外側のものも見える。 JavaScriptを学ぶ上で避けては通れないレキシカルスコープ - 大人になったら肺呼吸

そのスコープに変数がなかったら内側から外側に値を参照していくというのも理解。

今度は中の関数が外側で実行されないで、returnされてるパターン。 displayName();してないのにmakeFun();で値が返って来てて不思議。 不思議なんだけど、これがクロージャーっていうやつらしい。

こっちも不思議だけど、最初にいれた引数をxの値として参照して、 それがないyをまた後から参照してるから、 っていうクロージャーって理解。

実用的なクロージャーはまた別記事で。

読んでみた!JavaScript の概要!その13

Working with Objects - JavaScript | MDN


  • オブジェクトはプロパティの集まり
  • オブジェクトは連想配列と呼ばれることもある
  • nullとundefined以外のすべてのプリミティブ型はオブジェクト

オブジェクトはちょっとややこしすぎたので、またあとで読む

読んでみた!JavaScript の概要!その12

関数 - JavaScript | MDN

8 . 関数

この間読んだ続き、定義済み関数

eval 関数

evalは読んでみたけど、ちょっとピンとこなかった… 調べてみたら、使わないでくださいって書いてた。 これはまたでてきたときに考える。 eval - JavaScript | MDN

isFinite 関数

有限数の場合だとtrue、それ以外はfalseを返す(NaN、正の無限大、負の無限大)

isNaN 関数

NaNが渡されたらtrue、それ以外ならfalse(Number)

parseInt 関数および parseFloat 関数

parseFloat

文字列を数値に変えてくれる var year = "2014";を数値に変えたいとき使う

parseInt

文字列を数値に変えてくれる parseFloat と違ってparseIntは基数を第2引数に指定できる。 2進数や16進数で値を返すことができる

Number 関数および String 関数

Stringは数値を文字列に返してくれる String(new Date(430054663215)); Dateも"Thu Aug 18 1983 20:37:43 GMT+0900 (JST)" 文字列に返せる

Numberは文字列を数値に変換してくれるけど、 parseFloatと何が違うんだろうって単純に思った 使い分けってどういうとこなんだろ…

escape 関数および unescape 関数

非推奨になったみたいなので覚えない…