-2

1 種類の JavaScript だけを使用するにはどうすればよいですか? それで

is ({}) // object
is (function () {}) // function

私に向かって走っている is() 関数が必要です。jQueryではありません

4

3 に答える 3

3

演算子を使用しtypeofます。

var type = typeof(function() {}); // "function"
type = typeof({}) // "object"
于 2012-10-14T09:22:16.993 に答える
1

あなたが言っていることを完全に想像することはできませんが、特定の関数の「タイプ」を確認したい場合は、行うことができます

if (typeof(myFunc) === 'function')
于 2012-10-14T09:22:49.830 に答える
1

それで; 方法は次のとおりです。

Type = {

    isrgx: /\[|\]|object| /g,

    toString: function(args) {

        return (Object.prototype.toString.call(args));
    },

    is: function(args) {

        return (this.toString((args || "")).replace(this.isrgx, ""));
    }
};

Type.is()

Type.is({}); // --> Object

Type.is(function() {}); // --> function

Type.is("dklsk"); // --> String

Type.is(111); // --> Number

以下を追加するとより良いでしょう :) isFunction (), isObject ()

Type = {

    isrgx: /\[|\]|object| /g,

    toString: function(val) {

        return (Object.prototype.toString.call(val));
    },

    is: function(val) {

        return (this.toString((val || "")).replace(this.isrgx, ""));
    },


    isFunction: function(val) {

        return (this.is(val) == "Function");
    },

    isObject: function(val) {

        return (this.is(val) == "Object");
    }
};

Type.isObject()

Type.isObject({}); // --> true
Type.isObject("dsds"); //--> false

Type.isFunction()

Type.isFunction(function() {}); // --> true
type.isFunction("dsdsds"); // --> false

落ち着いて...

于 2012-10-14T09:22:31.517 に答える