var num={};
alert(typeof num=="object");// true
var num=1;
alert(typeof num=="number");// true
var num="string";
alert(typeof num=="string");// true
var num=true;
alert(typeof num=="boolean");// true
var num
alert(typeof num=="undefined");// true
var num=function(){}
alert(typeof num=="function");// true
//这里的所有检测类型都需要为小写的。小细节还是得注意下。
2018.2.2
alert(typeof Symbol() === 'symbol');// true
ES6引入的一种新的原始数据类型Symbol,表示独一无二的值
.Symbol()-->解决属性名的冲突,因为传入对象属性时,同样的Symbol不相等; 解释:什么是冲突呢?当多人合作编码的时候,经常会出现你往对象上加了一个某某属性(比如 $ ),他人正好也想到了这个名称,当你们同时用了这个名称作为属性,代码之间就会发生冲突,互相覆盖。而用 symbol,即使都用了相同的描述,也不是同一个 symbol。