var arr=[1,2,3];
arr.toString()//输出“1,2,3”
Object.prototype.toString.call(arr)//输出 "[object Array]"
toString()和Object.prototype.toString.call() 不一样的
首先你要明白Object是js中所有其他数据类型的父类。意思是所有的数据类型都继承了Object。
但是无论是string还是array都是会重写这个tostring方法的。从此处就可以说你用的两者就完全不同。
而且Object.prototype.toString.你要理解这代码的意思。prototype从英文就说了是“原型”的意思。
就是说你这个Object.prototype.toString调用的是object的原型(也就是父类)的tostring方法