深夏之叶
2016-10-13 13:55
为什么这里的typeof obj输出的是obje。但是typeof obj.tpString 输出的是function呢
b是new出来的一个对象,所以b.toString()返回的是字符串"object object",然后用typeof运算符去判断b.toString()的数据类型就会返回string.
console.log(typeof ooob.toString) //function
console.log(typeof ooob.toString()) //string
因为 obj.toString 是一个未调用方法 所以 用typeof 检测返回function;
因为 obj.toString() 是一个调用方法 所以 用typeof 检测返回function
typeof obj.toString 结果是function
说明obj有一个toString方法,而他本身没有定义这个方法,toString是从Object.prototype继承而来;
typeof obj.toString这句话就是为了告诉你所有的对象最后都会继承Object.prototype。
toString本来就是一个函数方法啊,而obj是对象
//toString() 方法可把一个逻辑值转换为字符串,并返回结果。
例如:
var b = new Object();
typeof b.toString();//返回string,
题主貌似没把问题描述清楚呢
JavaScript深入浅出
281112 学习 · 1020 问题
相似问题
回答 4
回答 5