Aquí hay una pregunta en JavaScript a continuación:¿Por qué "foo" .toString() no es lo mismo que toString.call ("foo")?
// Tested via Google Chrome console.
var toString = Object.prototype.toString;
"foo".toString(); // "foo"
toString.call("foo"); // [object String]
[].toString(); // ""
toString.call([]); // [object Array]
{}.toString(); // syntax error
toString.call({}); // [object Object]
Por qué el resultado de toString es diferente con toString.call()?
ACTUALIZADO
String.prototype.toString.call("foo"); // "foo"
Object.prototype.toString.call("foo"); // [object String]
Está String.prototype.toString no de la cadena de prototipo como el de abajo?
toString en String [no encontrado] -> toString en String.prototype [not found]
--> toString in Object.prototype[found]
un experto en javascript, pero yo sospecho que tiene que ver con llamar a una función predefinida y haciéndola pasar un parámetro nulo en lugar de llamando a una función en un objeto inexistente. – bdares
¿Cómo se inspeccionan esos resultados? Consola del navegador, o algo más? –
@ShadowWizard Consola de navegador Chrome. –