您现在的位置是:首页 > 电脑技术查询 > web开发

关于typeof的有关问题

编辑:chaxungu时间:2022-10-02 23:18:16分类:web开发

关于typeof的问题
var bTrue=true;
var oFalseObject =new Boolean(false);
alert(typeof bTrue); //输出的是boolean
alert(typeof oFalseObject); //输出的是object

为什么是这个结果呢


------解决方案--------------------
在javascript中,值有原始值与引用值。原始值包括:Boolean, Number, String, undefined, null(null,我自己有点疑问)
javascript的本地类型(是引用值类型)有:Object, Boolean, Number, String, Date, Array, Function, RegExp

typeof bTrue //bTrue是Boolean原始值
typeof oFalseObject //oFalseObject是对象,他是原始值Boolean的引用类型

alert(oFalseObject instanceof Boolean); //oFileObject是Boolean引用类型的实例

alert(bResult instanceof Boolean); //bResult在哪里定义了,我怎么没发现呢?

------解决方案--------------------
补充一点:
使用typeof运算符,如果变量是引用类型,返回的都是object
------解决方案--------------------
JGood正解,补充一下,引用类型还有各种Error
RangeError,好几个,记不清了