87,991
社区成员
发帖
与我相关
我的任务
分享
var a = function() {
};
alert(a.toString());
alert(Object.prototype.toString.call(a));
alert(Function.toString.call(a));//与a.toString()为同一方法
alert(a.toString === Function.toString);//true, 更能说明这一点
a.toString = function(){alert('重写')}//重写之后
alert(a.toString === Function.toString);//false, 被重写之后,
var b = [];
alert(typeof b);//object
alert(Object.prototype.toString.call(b));//[Object Array],
//1. 当你想知道某一对象的具体类型时很有用(特别是javascript的内置类(Date, Function, RegExp等)!
//2. 当你想调用原型中的方法,而不是重写后的方法时(如想调用a继承的toString, 而不是重写后的时)
var a = {};
alert(a.toString());
alert(Object.prototype.toString.call(a));
alert(a.toString());
// 按你给的代码, 那么上面这句相当于下面这个
alert(Function.prototype.toString.call(a));
// ------------
// 那么, 如果下面2句你认为一样么?
alert(Function.prototype.toString.call(a));
alert(Object.prototype.toString.call(a));