すがブロ

sugamasaoのhatenablogだよ

JavaScript読書会(二回目)に行ってきました!

サイ本読書会

7/26 に id:cimadai 主催のサイ本読書会(正式名称:若手IT勉強会)に参加してきました。
若手IT勉強会 - 第3回勉強会

JavaScript 第5版

JavaScript 第5版

相変わらず遅刻した>< いやね、ギリギリ間に合う計算だったんだけど、なんか中央線が10分遅延するとかで予定のルートで行けなくってね><
そして、到着早々 id:monjudoh にDISられる*1><

勉強会方針

とりあえず、集まったみんな(13〜5人くらい?)で各章毎に要点をまとめつつ、チクチク読んでいく。そこで気になる事があれば全員で話し合って解決してゆく、というスタンスで進める。
今回は1章〜3章まで。

発見したことまとめ

読書していくなかで、「ほほう、これは・・・!」と思った事です。もし間違っていたらご指摘ください!

  • 数値→文字列簡単変換

暗黙の型変換を利用して文字列へ

var num = 10
var str = num + ""
alert(str + "[" + typeof(str) + "]") // 10 [string] と表示される
  • 文字列→数値簡単変換

暗黙の型変換を利用して数値へ

var str = "10"
var num = str - 0 // ここでの -0 は、-10 や * 100 でも暗黙の型変換は行われるのだけど、それだと値が変わるので、必然的に - 0 になるのですね><
alert(num + "[" + typeof(num) + "]") // 10 [number] と表示される
  • JSにおいて文字列(文字リテラル)はプリミティブ型だよ
var s = "hogehoge"
alert(typeof(s)) // ここの s に入るのはプリミティブな文字列(string型!)
  • プリミティブな型にアクセスする時はその瞬間にラッパークラスが生成されてるよ
var s = "hogehoge"
alert(s.length)  // ここで、実は s.length へのアクセス時にラッパークラス(String)が生成される
alert(new String(s).length) // これは上の行と同等
  • プリミティブな型にアクセスする時はその瞬間にラッパークラスが生成されてるよ。さらに破棄もされちゃうんだよ。
var s = "hogehoge"
s.piyo = "fuga"
alert(s.piyo)  // ここで、新しい String型が生成されるので、 undefined

懇親会

西岡Blog の中の人である raitu さんの案内で神楽坂の404 Not Foundというしゃぶしゃぶ屋さんへ。イベリコ豚UMEEEEEEEEEEEEE!
っていうか、毎回思うんだが、しゃぶしゃぶという響きがえr(ry
ちなみに、raituさんは手相が見れるということで*2、おいらの生命線を見てもらったのだけど、現在の生命力は生まれ持った生命力の80〜90%程度に削られているらしい。泥のように働いた結果がこれだよ!><*3

次回(予定)

ちょっと空いて9/15に行う予定。
続きの4章からを読んでいく。
また、4章以降は立候補者による輪講形式でやろう、という話で決まった*4。そして、第一部の中では、以下の章は担当者がまだ決まっていないので、突撃したい人は手を挙げると良いと思います。
おいらは言い出しっぺな事もあり、7章(オブジェクトと配列)をやることになってます。

輪講にあたり

結局のところ、プレゼン形式になると考えているので、USterm で配信できないかなーと考えてます。
その場合

  • マイクっているの?
  • PCって固定の方が良いの?(発表者によってPC変えるのってたいへん?)
  • っつーかそもそも配信ってどうやんの?

といった疑問が渦巻きます。そこら辺りはきっとTechTalk.jp - 日本の技術系プレゼンテーション参加者のためのハブサイトを参考にできると思うのだけど、今直近ではおれの体力が保たずorz
っつーか、こういうの考えてみると 1000speakers のクオリティ半端ないな。すげー。

*1:安月給で泥のように働いているのはダンピングだ!という趣旨で

*2:こうやって女子に触れるのですね、わかります

*3:まぁ、別に年中忙しいわけじゃないんだけど、ここ二ヶ月くらいはかなりアレな訳で

*4:というか、言い出しっぺはおれなんだよね