[对象]是什么意思?(JavaScript)

[对象]是什么意思?(JavaScript),javascript,jquery,Javascript,Jquery,我的一个警报给出了以下结果: [object Object] <pre> <code>{JSON.stringify(REPLACE_WITH_OBJECT, null, 4)}</code> </pre> 这到底是什么意思?(这是某个jQuery对象的警报。)alert()函数无法以可读友好的方式输出对象。尝试改用console.log(object),并启动浏览器的控制台进行调试。这意味着您正在提醒某个对象的实例。当调用对象时,t

我的一个警报给出了以下结果:

[object Object] 
<pre>
    <code>{JSON.stringify(REPLACE_WITH_OBJECT, null, 4)}</code>
</pre>

这到底是什么意思?(这是某个jQuery对象的警报。)

alert()函数无法以可读友好的方式输出对象。尝试改用console.log(object),并启动浏览器的控制台进行调试。

这意味着您正在提醒某个对象的实例。当调用对象时,
toString()
,默认实现返回
[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

如果您想检查对象,您应该
console.log
它,
JSON.stringify()
它,或者枚举它的属性并使用
单独检查它们,因为@Matt回答了
[object object]
的原因,我将详细介绍如何检查对象的值。我脑子里有三个选择:

  • JSON.stringify(JSONobject)
  • console.log(JSONobject)
  • 或者在对象上迭代
基本例子

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(""));
// or console.log(strBuilder.join(""))

警报不是显示对象的最佳方式。试试console.log?如果您仍然在控制台中看到Object对象,请像这样使用JSON.parse>
var obj=JSON.parse(yourObject);log(obj)

如果要在DOM中弹出它,请尝试将其包装到


使可视化分析变得更容易

另一个选项是使用
JSON.stringify(obj)

例如:

...

这是因为Javascript中有不同类型的对象

比如说

  • 功能对象:
stringify(函数(){})
->
[对象函数]

  • 数组对象:
stringify([])
->
[对象数组]

  • RegExp对象
stringify(/x/)
->
[object RegExp]

  • 日期对象
stringify(新日期)
->
[对象日期]

console.log(JSON.stringify(result))
  • 对象对象对象
stringify({})
->
[对象对象]

构造函数被称为
Object
(大写字母“O”),术语“Object”(小写字母“O”)指的是事物的结构性质

当您在Javascript中谈论“对象”时,实际上是指“对象对象””,而不是其他类型

如果要查看“[对象对象]”中的值,请使用:


另请参见“否,
JSON.parse
没有帮助。此注释完美地回答了我试图理解的问题。
console.log(JSON.stringify(result))