1. ~function(){
    2. var numObj = {
    3. isNum:"Number",
    4. isStr:"String",
    5. isBoo:"Boolean",
    6. isNull:"Null",
    7. isUnd:"Undefined",
    8. isObj:"Object",
    9. isAry:"Array",
    10. isFun:"Function",
    11. isReg:"RegExp",
    12. isDate:"Date"
    13. },isType = function(){
    14. var outerArg = arguments[0];
    15. return function(){
    16. var innerArg = arguments[0],
    17. reg = new RegExp("^\\[object"+outerArg+"\\]$","i");
    18. return reg.test(Object.prototype.toString().call(innerArg));
    19. }
    20. };
    21. var check = {};
    22. for(var key in numObj){
    23. if(numObj.hasOwnProperty(key)){
    24. check[key] = isType(numObj[key]);
    25. }
    26. }
    27. window.$t = window.check = check;
    28. }();
    29. console.log($t.isAry([]));