html table based upon json object tree
本问题已经有最佳答案,请猛点这里访问。
我有一个动态JSON对象,它可以包含不同类型的属性和对象,可以包含平面字符串甚至数组。我编写了一个JavaScript代码,将单个JSON结构转换为HTML表,效果很好,但我想将其转换为动态JSON,所以基本上我需要迭代JSON树的父级和子级,以了解如何创建这个HTML表。
但是,在尝试验证子对象是否包含对象时,我确实遇到了一些问题,比如:(我不想向JSON添加许多细节)
1 2 3 4 5 6 7 8 | parent: { child_1: { attr1 : value1 }, child_2: { [{ attribues and values in an array }] } } |
我怎么能做到?我想用"typeof"函数,就像这样:
1 2 3 4 5 | if (typeof key === 'array') { // do something }else{ // do another stuff } |
但我不相信这会奏效,你们能帮我吗?
事先谢谢。
检查
1 2 3 4 5 | if (key instanceof Array) { // do something } else { // do another stuff } |
但如果您的JSON是在另一个框架中创建的,那么这将失败。另一种选择是检查
1 | Object.prototype.toString.call(key).indexOf('Array') > 0 |
或检查
1 | Array.isArray(key) |
但并非所有浏览器都支持它。
EDOCX1[1]的描述,您可以在这里看到:https://developer.mozilla.org/en-us/docs/javascript/reference/operators/typeof