MooTools には独自のinstanceOf(instance, Type)
機能があります。
Javascriptのネイティブ演算子とは何か違うことをしているとしかinstanceof
思えませんが、何がわからないようです。
関数の違いや目的を説明できる人はいinstanceOf()
ますか?
MooTools には独自のinstanceOf(instance, Type)
機能があります。
Javascriptのネイティブ演算子とは何か違うことをしているとしかinstanceof
思えませんが、何がわからないようです。
関数の違いや目的を説明できる人はいinstanceOf()
ますか?
instanceOf
typeOf
MooTools の内部関数は、ネイティブの対応する関数よりも優れた型トラバーサルを実行します。
typeOf は、次の点で少し便利です。
typeof []; // object
typeOf([]); // array
typeof new Date(); // object
typeOf(new Date()); // date
instanceOf は主に Class に使用されますが、Types コンストラクターでも機能します。
例えば。
var foo = new Class(),
bar = new Class({
Extends: foo
});
var foobar = new bar();
instanceOf(foobar, bar); // true
// but also due to Extends prototype chain and the constructor:
instanceOf(foobar, foo); // true
// as well as standard behaviour like
instanceOf([], Array); // true
instanceOf(4, Number); // true vs 4 instanceof Number == false
ソースを参照してください: https://github.com/mootools/mootools-core/blob/master/Source/Core/Core.js#L47-58
mootools のタイプのコンストラクターの多くは、ダックタイピングを容易にするためにオブジェクトを装飾しているため、typeOf と instanceOf は実際の意味のある結果で機能します。
mootools タイプ関数もお読みください
少なくとも:
> "" instanceof String
false
> instanceOf("", String)
true