js判断变量的类型(使用闭包来玩一把)

        var Type = (function() {
            var Type = {};

            for (var i = 0, type; type = [‘Undefined‘, ‘Null‘, ‘Boolean‘, ‘Number‘, ‘String‘, ‘Function‘, ‘Array‘, ‘Object‘][i++]; ) {

                (function(type) {
                    Type[‘is‘ + type] = function(obj) {
                        return Object.prototype.toString.call(obj) === ‘[object ‘ + type + ‘]‘;
                    };
                })(type);

            };

            return Type;
        })();

        console.log(Type.isUndefined());    // true
        console.log(Type.isNull(a = null));    // true
        console.log(Type.isBoolean(false));    // true
        console.log(Type.isNumber(123));    // true
        console.log(Type.isString(‘str‘));    // true
        console.log(Type.isFunction(function() {}));   // true
        console.log(Type.isArray([1, 2, 3]));    // true
        console.log(Type.isObject({}));    // true
时间: 2024-11-10 07:37:27

js判断变量的类型(使用闭包来玩一把)的相关文章

js判断变量初始化的三种形式

<1> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script type="text/javascript"> //js判断变量初始化有三种形式 var x; if (x == null) { alert("x为null"); } if (typeof (x) == "un

golang 如何判断变量的类型

本文介绍两种用于判断变量类型的方式. 方法一 package main import ( "fmt" ) func main() { v1 := "123456" v2 := 12 fmt.Printf("v1 type:%T\n", v1) fmt.Printf("v2 type:%T\n", v2) } output: v1 type:string v2 type:int 方法二 package main import (

js判断变量是否为整数

//返回false则不为整数数字,返回ture则反之 var isIntNumber=function(val){ if (isNaN(val) || Math.floor(val) != val) { return false; } else { return true; } } //例: alert(isIntNumber("1.1")); 1.NaN 属性是代表非数字值的特殊值.该属性用于指示某个值不是数字.可以把 Number 对象设置为该值,来指示其不是数字值.   isNa

JS判断设备的类型

利用JS判断浏览器的用户代理,从而获得设备类型.利用这个方法可以获得用户的设备是移动设备还是PC设备. JS代码如下: function browerType() { var sUserAgent = navigator.userAgent.toLowerCase();   //浏览器的用户代理设置为小写,再进行匹配 var isIpad = sUserAgent.match(/ipad/i) == "ipad";   //或者利用indexOf方法来匹配 var isIphoneOs

js 判断变量是否为空或未定义

判断变量是否定义: if(typeof(hao) == "undefined"){ //未定义 }else{ //定义 } 判断变量是否为空或NULL,是则返回'', 反之返回原对象值: function getStr(data){ if(!data){ return ''; }else if(typeof(data) == "undefined"){ return ''; } return data.toString(); } 原文地址:https://www.c

js判断变量类型的方法

1.使用typeof 2.使用Variables.Constructor 使用实例 <script type="text/javascript">     function fun(msg)     {                  //使用typeof判断         if(typeof msg=="string")         {             alert("使用typeof判断:"+msg);       

js 判断变量类型

if (typeof(reValue) == "undefined") {    alert("undefined"); } typeof 返回的是字符串,有六种可能:"number"."string"."boolean"."object"."function"."undefined"

JS判断变量类型

网上搜索这个问题一般会给出typeof. instanceof .constructor.Object.prototype.toString.call 和 $.type 这几种方法,关于Object.prototype.toString.call的原理:可以看下这篇文章: https://www.cnblogs.com/ziyunfei/archive/2012/11/05/2754156.html 原文地址:https://www.cnblogs.com/johnjackson/p/10921

js的变量——基本类型保存在栈中,引用类型保存在堆中

javascript的基本类型:Undefined,Null,Boolean,Number,String 引用类型:Object,Array,Function 基本类型值在内存中占据固定大小,被保存在栈内存中,引用类型值是对象,保存在堆内存中. Javascript的内存的生命周期对于用户来说是透明的,不开放的.在定义变量时候就完成了分配内存,使用时候是对内存的读写操作,内存的释放依赖于浏览器的垃圾回收机制. 栈(stack)和堆(heap)==> 1,栈 stack是有结构的,先进后出,存放基