Результаты, которые вы получите, будут зависеть от среды хоста.Если я запускаю это:
alert(toString === window.toString);
alert(toString === Object.prototype.toString);
... в Chrome, я получаю true
и false
соответственно;в Firefox я получаю false
и false
.IE дает true
и false
, но см. Ниже.
Объект окна в браузерах немного сложен, потому что это хост-объект, и хост-объекты могут делать странные вещи, еслихочу.:-) Например, ваш toString.call("foobaz")
не будет работать в IE, потому что toString
из window
не является реальной функцией JavaScript и не имеет call
или apply
.(Я не говорю, что это правильно, понимаешь ...)