ECMAScript 6 (ES.next) で導入予定の Object.isObject について
2012-05-04 に #ES6 の Draft が更新されててObject型を判定する Object.isObject が入ってた。/ harmony:specification_drafts [ES Wiki] http://t.co/pHnnmy95
2012-05-05 19:42:48@think49 後方互換性のための実装コードは is-object.js https://t.co/6p6Yd0TC でOK. 今後は Object.isObject を拡張する形で互換性を保つと便利かもしれない。#ECMAScript #JavaScript
2012-05-05 19:47:39@teramako false のはずです。Type はECMAScriptでいう「型」を返す内部演算子だったと記憶しています。
2012-05-09 20:42:36@think49 Type(null) は Null 型だから Object ではないってことですか。typeof とは違うんですね。
2012-05-09 20:43:45@teramako そうですね。正直、typeof 演算子は Type() に合わせて欲しかったと思ってます。 私が「typeof 演算子がわかりづらい」と常々主張している理由がそれでして…。
2012-05-09 20:47:35@think49 ですね。因みにES.nextでも、"break the web" の魔法の呪詛を唱えられて、まだ typeof null === "null" になっておりませんです...
2012-05-09 20:48:59@teramako そうなんですか!? #ES6 でようやく解決されると思ったのに…。 既存の実装との共存を図るなら Object.getTypeOf() でも作ってしまえばいいんじゃないかなあ。
2012-05-09 20:56:54@teramako Type() についての説明を見つけました。 http://t.co/v1OyHETI (ES3) と http://t.co/w0fiYyY8 (ES5) ですね。#ECMAScript
2012-05-09 20:57:48@kanasan true だと思います。 http://t.co/pHnnmy95 からDLした working_draft_ecma-262_edition_6_5-4-12.doc ではP29の「8 Types」に #ES5 と同様の説明がありました。
2012-05-09 21:15:11@teramako 同文書のP169で「15.2.3.15 Object.isObject」が説明されていますが、Type() に依存した仕様ですので「Object型の場合のみ true を返す」と読んで差し支えないかと思います。
2012-05-09 21:15:55