読んでみた!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を学ぶ上で避けては通れないレキシカルスコープ - 大人になったら肺呼吸
そのスコープに変数がなかったら内側から外側に値を参照していくというのも理解。
今度は中の関数が外側で実行されないで、returnされてるパターン。 displayName();してないのにmakeFun();で値が返って来てて不思議。 不思議なんだけど、これがクロージャーっていうやつらしい。
こっちも不思議だけど、最初にいれた引数をxの値として参照して、 それがないyをまた後から参照してるから、 っていうクロージャーって理解。
実用的なクロージャーはまた別記事で。
読んでみた!JavaScript の概要!その13
Working with Objects - JavaScript | MDN
- オブジェクトはプロパティの集まり
- オブジェクトは連想配列と呼ばれることもある
- nullとundefined以外のすべてのプリミティブ型はオブジェクト
オブジェクトはちょっとややこしすぎたので、またあとで読む…
読んでみた!JavaScript の概要!その12
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 関数
非推奨になったみたいなので覚えない…