typeof和instanceof检测数据类型

首先要知道js有5种基本数据类型:数值型 ( number )、字符串型( string )、逻辑型( boolean、 特殊数据类型:无定义数据类型 ( undefined )、空值 (null); 另外还有3种 复合数据类型,

首先要知道js有5种基本数据类型:数值型 (number)、字符串型(string)、逻辑型(boolean、 特殊数据类型:无定义数据类型 (undefined)、空值(null); 另外还有3种复合数据类型,分别是:函数(function)、对象(object)、数组 (array)。

说到检测数据类型,都加都会想到typeof是一个检测变量或值得操作符,只有一个参数!

看下面这段js代码:


	var a = "phpddt.com";
	var b = true;
	var c = 100;
	var d;
	var e = null;
	var f = new Object();

	alert(typeof(a)); //string
        alert(typeof(b)); //boolean
	alert(typeof(c)); //number
	alert(typeof(d)); //undefined
	alert(typeof(e)); //object
	alert(typeof(f)); //object

从上面js代码运行的结果可以看出,如果变量是个对象或者null,返回的类型都是object。但是有时侯,我们不仅仅要知道某个数据类型是不是对象,更要知道它是什么类型的对象!

OK,就来讲一个js中重要的运算符,instanceof,它的主要作用如下:

1.判断一个对象是否为数组

2.判断某个变量是否为某个对象的实例

看下面这段js代码:


<script type="text/javascript">
function a(){
       this.a="a";
       alert(typeof(arguments)); //Object
       alert(arguments instanceof Object); //true
       alert(arguments instanceof Array); //false
}
var test=new a();
alert(test instanceof a); //true
</script>

从上面的结果可以看出:instaceof去测试会发现arguments不是一个Array对象

 

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

demo展示1: !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtdhtml xmlns=http://www.w3.org/1999/xhtml head meta http-equiv=Content-Type content=text/html; charset=utf-8 / tit
工作中发现表单提交方便的问题,很多时候IE下提交好好的,打了火狐下就出现了问题,利用提交按钮就不成功了,于是利用JS的方式就成功了,也不知道为什么。在导师的催促下就总结出以下的几种常用表单提交的方法。 第一种方式:表单提交,在form标签中增加onsu
Dom元素 1 getElementById document.getElementById(id) 返回一个对象 2 getElementsByTagName document.getElementsByTagName(tag) 返回一个对象数组 运行使用*通配符,获取所有元素 dom.getElementsByTagName(*) 获取dom下所有子元素 3 getElementsByClass
public class Cookie1 extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType(text/html;charset=utf-8); PrintWriter out = response.getW
我们现在手机的那个开发的速度越来越快了,手机具备了很多以前不具备的功能,同时手机能做的事情也越来越多了,电脑能做的事情很多手机都能做了,所以在浏览网站的时候用户都会将浏览网站的硬件从电脑转为手机,所以手机网站的建设对于我们目前的一个发展趋
前端领域又发生了翻天覆地的变化,涌现了许多优秀的Javascript和CSS库,我们继续给大家收集和整理部分出色的前端组件和库分享给大家,希望对您有所帮助。 Moon Moon是一个JavaScript UI库,类似Vue.js,但是相对vue更加简化和直接,它去除一些膨胀代码。 它