gpt4 book ai didi

javascript - "object"在这种情况下意味着什么?

转载 作者:行者123 更新时间:2023-11-28 20:42:36 24 4
gpt4 key购买 nike

这是上一个有关单步执行 json 数组的问题的结果。大卫,回答者给出了一个很好的答案,但我不明白下面的“if”语句中的“object”一词是什么或做什么。它似乎是一个字符串,但它似乎充当某种关键字.有人可以帮忙吗?非常感谢。

function json2txt(obj) {
var txt = '';
for (var key in obj) {
if (obj.hasOwnProperty(key)) {
if ("object" == typeof(obj[key])) {
json2txt(obj[key]);
} else txt += obj + '\t' + obj[key] + '\r';
}
}
}

最佳答案

typeof operator JavaScript 中给你一个字符串,告诉你操作数是否是对象引用、数字、原始字符串等。所以该行正在检查 obj[key]是一个对象引用。

这就是 typeof为您提供(来自上面的链接),其中操作数的类型位于左侧:

  • Undefined :"undefined"
  • Null :"object"
  • Boolean :"boolean"
  • Number :"number"
  • String :"string"
  • Object : ( native 且未实现 [[Call]]): "object"
  • Object : ( native 或主机并执行 [[Call]]): "function"
  • Object :(主机并且不实现 [[Call]]):实现定义的,但可能不是 "undefined" , "boolean" , "number" ,或"string" .

可能值得一提的是,虽然 typeof经常被写成一个函数,但它不是一个函数,括号是不必要的。该行也可以是:

if ("object" == typeof obj[key]) {

您可能还会发现我关于确定有用事物类型的博客文章:Say what?

关于javascript - "object"在这种情况下意味着什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14110436/

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