javascript中检测变量的类型的代码
常用检查变量类型的方法有两种,下面是解说:
检查变量类型方法一:typeof
格式:typeof 变量
用法:if( typeof 变量 == "类型标识") { ... }
下面是一些常用数据类型对应的typeof值:
{an:"object"} : object
["an","array"] : object
function() {} : function
"a string" : string
55 : number
true : boolean
new User() : object
从上表中,可以看出用typeof取得变量类型时,对于数组、对象、自定义类的对象同视为object,其它类型检查正常。所以它无法判断出对象是object,还是array,还是User。那么,此时我们可用第二种方法处理。
检查变量类型方法二:构造函数法(constructor)
格式:变量.constructor
用法:if(变量.constructor == "类型标识符") { ... }
{an:"object"} : Object
["an","array"] : Array
function() {} : Function
"a string" : String
55 : Number
true : Boolean
new User() : User
从上表中可以看出,我们能正确获取到每种数据的类型。所以,尽量使用变量的构造函数来获取变量类型更好。
不过,有时候这样也更方便:
if(typeof 变量 == "undefined") { ... }
相关推荐
-
如何检测JavaScript的各种类型
一.先介绍下5种原始类型 JavaScript中5种原始类型为string,number,boolean,undefined,null var name = "Jack"; var age = 32; var single = false; var app; //undefined console.log(typeof name); //string console.log(typeof age); //number console.log(typeof single); //bool
-
Javascript isArray 数组类型检测函数
1.typeof操作符.对于Function.String.Number.Undefined这几种类型的对象来说,不会有什么问题,但是针对Array的对象就没什么用途了: Js代码 复制代码 代码如下: alert(typeof null); // "object" alert(typeof []); // "object" 2.instanceof操作符.此操作符检测对象的原型链是否指向构造函数的prototype对象,恩,听起来不错,应该可以解决我们的数组检测问
-
javascript 浏览器类型和版本号检测代码(兼容多浏览器)
javascript检测浏览器类型和版本号(兼容各浏览器) var uA = navigator.userAgent; var browserType = "unknown"; if (uA.indexOf("Opera") > -1) { browserType = "Opera"; } else if (uA.indexOf("Safari") > -1) { browserType = "Safar
-
JavaScript数据类型检测代码分享
复制代码 代码如下: /** * param:o表示检测的值 * return:返回字符串"undefined"."number"."boolean"."string"."function"."regexp"."array"."date"."error"."object"或"null&quo
-
Javascript实现检测客户端类型代码封包
检测访问网页的浏览器呈现引擎.平台.Windows操作系统.移动设备和游戏系统 /** * Author: laixiangran. * Created by laixiangran on 2015/12/02. * 检测访问网页的浏览器呈现引擎.平台.Windows操作系统.移动设备和游戏系统 * ******************************************************************** * 各版本浏览器在windows10.0下的用户代理字符串:
-
javascript 学习笔记(六)浏览器类型及版本信息检测代码
下面的checkBrowser()函数主要检测了三种浏览器(IE, firefox, chrome),其它的浏览器的检测有兴趣的朋友可以自行添加检测代码! HTML部分代码: (页面加载时执行检测函数) 复制代码 代码如下: <body onload="checkBrowser()"> <p id="userAgent"></p> <p id="browser"></p> </bo
-
JavaScript学习笔记之检测客户端类型是(引擎、浏览器、平台、操作系统、移动设备)
//取得用户代理字符串 并全部小写. var ua = navigator.userAgent.toLowerCase(); document.write(ua); 在上篇文章给大家介绍了基于javascript代码检测访问网页的浏览器呈现引擎.平台.Windows操作系统.移动设备和游戏系统 ,感兴趣的朋友可以点击全文了解详情. 1.识别呈现引擎 引擎主要包含四种:IE.Gecko.WebKit.Opera 2.识别浏览器 主流浏览器包含四种:IE.Chrome.Firefox.Opera 3
-
浅谈javascript的数据类型检测
一.javascript的数据 javascript的数据分为两种:简单数据和复杂数据.简单数据包含number,string,boolean,undefined和null这五种:复杂数据只有一种即object.[此处友情鸣谢李战老师,<<悟透JavaScript>>写得太传神,印象太深刻了] 二.javascript的数据类型检测 1.万能的typeof 我们先测试一下通过typeof来获取简单数据类型.什么也别说了,上代码是王道: 复制代码 代码如下: // 获取变量obj的数
-
javascript 检测浏览器类型和版本的代码
检测浏览器及其版本的代码 复制代码 代码如下: getBrowser : function(){ var browser = { msie: false, firefox: false, opera: false, safari: false, chrome: false, netscape: false, appname: 'unknown', version: 0 }, userAgent = window.navigator.userAgent.toLowerCase(); if ( /(
-
JavaScript类型检测之typeof 和 instanceof 的缺陷与优化
在javascript中,typeof 和 instanceof 是用来判断数据类型比较通用的两个方法,这篇文章的目的是通过对这两个方法介绍来分析其存在的不足并提出优化方案. typeof -------------------------------------------------------------------------------- typeof 返回一个表达式的数据类型的字符串,返回结果为javascript中的基本数据类型,包括:number.boolean.string.o
随机推荐
- DOS批处理中%~dp0等扩充变量语法详解
- js 页面刷新location.reload和location.replace的区别小结
- javascript搜索框效果实现方法
- 打印机四种进纸故障常用处理方法
- java多线程编程之使用runnable接口创建线程
- IOS缓存管理之YYCache使用详解
- 使用iOS推送时警告错误的解决方法
- PHP操作MySQL中BLOB字段的方法示例【存储文本与图片】
- PHP迭代器的内部执行过程详解
- Android编程重写ViewGroup实现卡片布局的方法
- 深入探讨JavaScript、JQuery屏蔽网页鼠标右键菜单及禁止选择复制
- 小议Function.apply() 之一------(函数的劫持与对象的复制)
- 一句话JavaScript表单验证代码
- win2003 vps IIS6中添加站点并绑定域名的配置方法
- 只防病毒不安全 网络安全还要防哪些?
- Nginx报403 forbidden错误 (13: Permission denied)的解决办法
- 预防PHPDDOS的发包攻击别人的方法(iis+linux)
- linux sysctl参数配置详细介绍
- Android打包版本号设置方法
- 详解Java的位操作符