このブログの更新は Twitterアカウント @m_hiyama で通知されます。
Follow @m_hiyama

メールでのご連絡は hiyama{at}chimaira{dot}org まで。

はじめてのメールはスパムと判定されることがあります。最初は、信頼されているドメインから差し障りのない文面を送っていただけると、スパムと判定されにくいと思います。

参照用 記事

「==」の意味をどう定めるか

「後で(あるいは明日)書きます」とか言っているあいだに、もう一本トラックバックが届いちゃったりして、、、でも、先に蒸し返しをば:

言い忘れちゃったんだけど、川俣さんのエントリーで僕が面白いと感じたのは実はここでした。全文引用:

ちなみに、実利主義的立場に立てば、「文字列の参照」の等価性の判定と「文字列」の等価性の判定は、圧倒的に後者の方が出現頻度が高いので、後者をより短い構文で書ける言語の方が便利です。つまり、==で参照を判定し、Equalsメソッドで文字列を判定するよりも、==で文字列を判定して、Object.ReferenceEqualsで参照を判定する言語の方がラクチンです。

JavaScriptには、「==」と「===」があったりします。


js> var str1 = "Hello";
js> var str2 = new String("Hello");
js> var str3 = new String("Hello");
js> str1 == str2
true
js> str1 === str2
false
js> str2 === str3
false

オオー、いいじゃん、いいじゃん。


js> str2 == str3
false

おい、コラ。


js> var str4 = "Hello";
js> str1 == str4
true
js> str1 === str4
true

はれれれれ、君(JavaScript)はやっぱり一筋縄じゃいかんね。