gpt4 book ai didi

javascript - 基于json对象树的html表

转载 作者:行者123 更新时间:2023-12-04 20:11:50 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





How can I check if an object is an array? [duplicate]

(51 个回答)


9年前关闭。




我有一个动态 json 对象,其中可以包含不同类型的属性和对象,可以有平面字符串甚至数组。
我制作了一个 javascript 代码来将单个 JSON 结构转换为 HTML 表,效果很好,但我喜欢将其用于动态 JSON,所以基本上我需要遍历 JSON 树的 parent 和 child ,看看我如何创建这个HTML 表格。

但是在尝试验证 child 内部是否有对象时,我确实遇到了一些问题,如下所示:(我不想在 JSON 中添加很多细节)

parent: {
child_1: {
attr1 : value1
},
child_2: {
[{ attribues and values in an array }]
}
}

我怎么能做到这一点?我正在考虑像这样使用“typeof”函数:
if (typeof key === 'array') {
// do something
}else{
// do another stuff
}

但是我不相信它会很好用,你们能帮帮我吗?

提前致谢。

最佳答案

检查typeof key === 'array'不正确,因为对于数组 typeof将返回 "object" .您可以尝试使用instanceof反而:

if (key instanceof Array) {
// do something
} else {
// do another stuff
}

但是,如果您的 JSON 是在另一个框架中创建的,这将失败。
另一种选择是检查 toString()
Object.prototype.toString.call(key).indexOf('Array') > 0

或检查
Array.isArray(key)

但并非所有浏览器都支持。
typeof的描述你可以看这里 https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Operators/typeof

关于javascript - 基于json对象树的html表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16405944/

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