>> 古い記事: その場でスクリーンショットを撮って挿入するマクロ(OpenOffice.org writer)
<< 新しい記事: Ruby 1.8.7 でファイルの行数カウント

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Javascript: オブジェクトからコンストラクタ名(クラス名)を得る

obj.constructor.name で取得できますが MDC では nameプロパティは「非標準」とされています。 ちょっと試してみたところ Firefox、Google Chrome では同じように動きます。

function puts(x){ document.write( x + "\n" ); }

function Foo(){}
var x = new Foo();

puts("<pre>");

puts( typeof x.constructor  ); //=> "function"
puts( x.constructor         ); //=> "function Foo() {\n}"
puts( x.constructor == Foo  ); //=> true
puts( x.constructor === Foo ); //=> true

puts( "----" );

puts( typeof x.constructor.name   ); //=> "string"
puts( x.constructor.name          ); //=> "Foo"

puts( "----" );

puts( ("a").constructor.name          ); //=> "String"
puts( (1).constructor.name            ); //=> "Number"
puts( (Infinity).constructor.name     ); //=> "Number"
puts( ({}).constructor.name           ); //=> "Object"
puts( ([]).constructor.name           ); //=> "Array"
puts( (function(){}).constructor.name ); //=> "Function"
puts( (true).constructor.name         ); //=> "Boolean"
//puts( (null).constructor.name       ); //=> null has no properties
//puts( (undefined).constructor.name  ); //=> undefined has no properties

puts("</pre>");

>> 古い記事: その場でスクリーンショットを撮って挿入するマクロ(OpenOffice.org writer)
<< 新しい記事: Ruby 1.8.7 でファイルの行数カウント
** ホームに戻る

コメント

コメントの投稿

管理者にだけ表示を許可する

|
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。