Kanasan.JS 読書会#3 の思い出
これは 2008/2/24 の Kanasan.JS JavaScript第5版読書会#3 のレポです。
なんと参加から3ヶ月経過してます。
ごめんなさいごめんなさい。
Kanasan.JS JavaScript第5版読書会#4 & 懇親会
に参加したいので、今更ですがレポートアップします。
--------------------------------------
机が見たことない配置になっててちょっとおもしろかった。
目の錯覚で長く見えたり短く見えたりする矢印みたいなやつの、
長く見える方みたいになってた。
p.115 Array の削除用のメソッドは特にない。splice を使う。
p.116 Array の length プロパティは変更可能
length を変更すると、Array の要素も変更される。
var hoge = [1, 2, 3]
hoge.length = 4; // hoge = [1, 2, 3, undefined]
これが Array オブジェクトのみの特徴。
Array 的なオブジェクトを作ることもできるが、その場合は上記特性は持たない。
Array.cocat は非破壊。
Array はオブジェクトなので、比較する時には toString 等の処理が必要。
これ、javascript 書き始めの頃はは理解できなかったなあ。
[1,2,3] == [1,2,3] // false
arguments は Arguments オブジェクトであって配列ではない。
いわゆる、配列的なオブジェクト。
function h() {
var i = 1;
if(i==1) {
function a() {alert("sss");}
a();
}
}
h();
は実装依存なので、関数リテラルにすべき。
function h() {
var i = 1;
if(i==1) {
var a = function() {alert("sss");}
a();
}
}
arguments.callee.caller も実装依存!
0||function(){console.log(1)}() にすれば式になる
(function(){})() はめんどくさいと思ってたので助かる
+function(){}() でも可?
p.137 arguments.callee とする方が安全
その方が確実に再帰できるし、見た目的にも再帰であることが自明なので。
関数名変更したりもするので。
p.138
関数 property は関数内からのみ参照できる。これ知らなかった。便利。
apply と Math
apply はそういう使い方もできる。
p.140 callee 化
function(a, b ) -> function(a){return function(b){}}
p.144 clousure の例
p.148 Function() コンストラクタは静的スコープを使わない
eval はそのときのスコープを使う
closure の定義についてちょっと意見が別れた感じ。
ということで、初参加の読書会でしたが、こちらもとても勉強になりました。
なかなか復習の時間取れなくてレポート遅延し過ぎました。
主催者及びスタッフの ujihisa さん、Kanasan さん、37to さん、
参加されたみなさん、おつかれさまでした。
それにしても、僕は勉強会に出ると消耗しすぎる。
この日は家に着いてから震えが止まらなくなり、夜半に熱が出た。知恵熱(笑)
高熱にうなされながら見た夢は、やはり javascript のデバッグをしてる夢だった。
トラックバック(0)
このブログ記事を参照しているブログ一覧: Kanasan.JS 読書会#3 の思い出
このブログ記事に対するトラックバックURL: http://pm.11op.net/mt/mt-tb.cgi/111
コメントする