JavaScript第5版(74p〜122p)
- 作者: David Flanagan,村上列
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2007/08/14
- メディア: 大型本
- 購入: 52人 クリック: 1,011回
- この商品を含むブログ (271件) を見る
まずは復習していて気になった部分から
&&の結果(p71)
と同じく、論理値にはならないらしい。 |
console.log(undefined && 10); // undefined console.log(null && 10); // null console.log(false && 10); // false console.log(true && 10); // 10
覚えておこう。
配列?オブジェクト?(p79)
配列の番号を指定した場合と、オブジェクトのプロパティのアクセスは
両方[]でできる。
じゃあ[1]と['1']は違うのだろうか
var arr = ['zero', '1st', '2nd', '3rd']; console.log(arr[1]); // 1st console.log(arr['1']); // 1st arr['1'] = 'ichi'; console.log(arr[1]); // ichi console.log(arr['1']); // ichi var obj = {}; obj[1] = '1st'; console.log(obj[1]); // 1st console.log(obj['1']); // 1st obj['1'] = 'ichi'; console.log(obj[1]); // ichi console.log(obj['1']); // ichi obj[new String('1')] = 'one'; console.log(obj[1]); // one console.log(obj['1']); // one
同じだった。一安心。
ここからは今日の部分
5.10.3 delete演算子(p77)
プロパティにのみ使える、shのunsetだ。
6.5 switch文(p86)
case句には変数が入れられる。
知ってはいたが、これでは最適化ができないため、結局else ifと同じ速度になるのかな。
比較対象が決まっている分少しは早いだろうけど、
うーん。可読性が高まるくらい?
7.6.5 配列の長さの変更(p116)
lengthを変更すると配列の長さがかわる!?
lengthが書き込み可能というのに驚き。
var arr = ['one', 'two', 'three']; console.log(arr.length); // 3 console.log(arr.join()); // one,two,three arr.length = 2; console.log(arr.length); // 2 console.log(arr.join()); // one,two arr.length = 3; console.log(arr.join()); // one,two,
ほんとだー。ちゃんと値がきえてるーーー
変数の変更をイベントとしてJavaScriptが反応してる?
これはArrayだけの特殊な実装なのだろうか。
それともこういった実装が可能なのだろうか。
変数の変更をイベントのキックにできるのであれば、、、、すごい!!