var a = "iamstring.";
var b = 222var c= [1,2,3];
var e = function(){alert(111);};
var f = function(){this.name="22";};
alert(typeof a) ------------> string
alert(typeof b) ------------> number
alert(typeof c) ------------> object//数组是引用类型的
alert(typeof f) ------------> function
alert(typeof e) ------------> function
var a = new String("iamstring.");
var b = new Number(222var c = new Array(222,4function(){console.log(111;};
var h = new Error("foo");
console.log(a instanceof String) true
console.log(b instanceof Number) true
console.log(c instanceof Array) true
console.log(e instanceof Function) true
console.log(f true
console.log(h instanceof Error) true
var i="str",arr=[1],num=1;
console.log(a.constructor=== String) true
console.log(b.constructor=== Number) true
console.log(c.constructor=== Array) true
console.log(e.constructor=== Function) true
console.log(f.constructor=== Function) true
console.log(h.constructor===Error) true
console.log(i.constructor===String) true
console.log(num.constructor=== Number) true
console.log(arr.constructor=== Array) true
console.log(Object.prototype.toString.call(a) === ‘[object String]’) -------> true;
console.log(Object.prototype.toString.call(b) === ‘[object Number]’) -------> ;
console.log(Object.prototype.toString.call(c) === ‘[object Array]’) -------> ;
console.log(Object.prototype.toString.call(d) === ‘[object Date]’) -------> ;
console.log(Object.prototype.toString.call(e) === ‘[object Function]’) -------> ;
console.log(Object.prototype.toString.call(f) === ‘[object Function]’) -------> true;