gpt4 book ai didi

javascript - [object 对象] 是什么意思?

转载 作者:IT王子 更新时间:2023-10-29 02:45:26 25 4
gpt4 key购买 nike

我试图提醒一个函数的返回值,我在提醒中得到了这个:

[object Object]  

这是 JavaScript 代码:

<script type="text/javascript">
$(function ()
{
var $main = $('#main'),
$1 = $('#1'),
$2 = $('#2');

$2.hide(); // hide div#2 when the page is loaded

$main.click(function ()
{
$1.toggle();
$2.toggle();
});

$('#senddvd').click(function ()
{
alert('hello');
var a=whichIsVisible();
alert(whichIsVisible());
});

function whichIsVisible()
{
if (!$1.is(':hidden')) return $1;
if (!$2.is(':hidden')) return $2;
}

});

</script>

whichIsVisible 是我要检查的函数。

最佳答案

正如其他人所指出的,这是对象的默认序列化。但为什么是 [object Object] 而不仅仅是 [object]

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

  • 函数对象:
    stringify(function (){}) -> [对象函数]
  • 数组对象:
    stringify([]) -> [对象数组]
  • 正则表达式对象
    stringify(/x/) -> [对象正则表达式]
  • 日期对象
    stringify(new Date) -> [对象日期]
  • several more ……
  • 对象对象!
    stringify({}) -> [对象对象]

那是因为构造函数被称为Object(大写“O”),术语“object”(小写“o”)指的是事物的结构性质。

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

stringify 应该是这样的:

function stringify (x) {
console.log(Object.prototype.toString.call(x));
}

关于javascript - [object 对象] 是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4750225/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com