O que significa? (JavaScript)

Um dos meus alertas está dando o seguinte resultado:

[object Object] 

o que isso significa, exatamente? (Este foi um alerta de algum object jQuery.)

Isso significa que você está alertando uma instância de um object. Ao alert o object, toString() é chamado no object e a implementação padrão retorna [object Object] .

 var objA = {}; var objB = new Object; var objC = {}; objC.toString = function () { return "objC" }; alert(objA); // [object Object] alert(objB); // [object Object] alert(objC); // objC 

Se você deseja inspecionar o object, você deve tanto console.log lo, JSON.stringify() , ou enumerar sobre suas propriedades e inspecioná-los individualmente usando for in

A function alert () não pode produzir um object de maneira amigável à leitura. Tente usar console.log (object) e acione o console do seu navegador para depurar.

Eu escrevi esta resposta em outra pergunta que foi duplicada, e em breve eu quero colocar a resposta chegou perto, então de qualquer maneira aqui é a minha resposta. meus dois centavos, e espero que algum outro ajude de alguma forma.

Como @Matt respondeu a razão de [object object] então você tem três opções JSON.stringify(JSONobject) , console.log(JSONobject) ou iterar sobre o object, veja o exemplo básico a seguir.

 var jsonObj={ property1 : "one", property2 : "two", property3 : "three", property4 : "fourth", }; var strBuilder = []; for(key in jsonObj){ if (jsonObj.hasOwnProperty(key)) { strBuilder.push("Key is " + key + ", value is " + jsonObj[key] + "\n"); } } alert(strBuilder.join("")); 

https://jsfiddle.net/b1u6hfns/

Os alertas não são os melhores para exibir objects. Tente console.log? Se você ainda ver Objeto Objeto no console, use JSON.parse como este> var obj = JSON.parse(yourObject); console.log(obj) var obj = JSON.parse(yourObject); console.log(obj)

Se você está popping no DOM, em seguida, tente envolvê-lo em

 
 {JSON.stringify(REPLACE_WITH_OBJECT, null, 4)} 

torna um pouco mais fácil analisar visualmente.