typeof与instanceof的区别

一.instanceof运算符:
       此运算符可以判断一个变量是否是某个对象(类)的实例,返回值是布尔类型的。
想要理解它的作用,必须对面向对象有所理解:

  代码实例如下:

var str=new String("antzone");  
console.log(str instanceof String);

  以上代码会输出true,因为str是对象String的对象实例。
一般说来只有使用构造函数创建的对象才会返回true,否则返回false,不过数组是一个例外,都会返回true

    1. typeof是什么?
            typeof 是一个操作符,主要的目的是检测一个变量是不是基本数据类型的变量,同时也可以说是确定一个变量是字符串,数值,布尔值,还是undefined
      的最佳工具。
    2. typeof 示例代码
      [javascript] view plain copy
      1. var a="zhangqian";  
      2. var b=true;  
      3. var c=10;  
      4. var d;  
      5. var e=null;  
      6. var f=new Object();  
      7.   
      8. alert(typeof a); //string  
      9. alert(typeof b); //boolean
      10. alert(typeof c);   //number
      11. alert(typeof d); //undefined  
      12. alert(typeof e); //object  
      13. alert(typeof f); //object
原文地址:https://www.cnblogs.com/huangshikun/p/6524153.html