javascript - 子对象未定义

标签 javascript jquery json object

我有一些 JSON 通过 jQuery 进行解析并加载到对象 $framework 中。我可以调用 console.log($framework) 并返回:

    Object 
    List item
    currentPage: Object 
    hash: "" 
    path: "/" 
    routes: Array[3] 
    url: "http://example.com.dev/"
    __proto__: Object

例如,我可以执行 console.log($framework.path),但是 console.log($framework.currentPage)console.log ($framework.routes) 始终返回未定义。在控制台中,我实际上可以展开两者并查看它们的子属性,因此它们似乎确实存在。我做错了什么?

编辑:根据要求,这是我正在使用的路由属性的 JSON:

    {
    "routes": [
    {
        "title": "Root",
        "path": "/",
        "path_plain": "",
        "partial": "index",
        "container": "#main_content"
    },
    {
        "title": "Content",
        "path": "/content",
        "path_plain": "content",
        "partial": "content/index",
        "container": "#main_content"
    },
    {
        "title": "Dashboard",
        "path": "/dashboard",
        "path_plain": "dashboard",
        "partial": "dashboard/index",
        "container": "#main_content"
    }
]

}

编辑:在进一步解决这个问题之后,事实证明真正的罪魁祸首是在 $framework 完全设置之前发生的自定义回调。我无法解释为什么我可以在直接引用属性之前和之后在控制台中看到对象并且仍然未定义,但至少它已经解决了。

最佳答案

试试这个:console.log($framework.routes[0])来记录第一个项目,console.log($framework.routes[1])如果您想查看内容,则可以选择第二个,依此类推。

根据您的 JSON,$framework.routes[0].title 应返回 Root

关于javascript - 子对象未定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18918488/

相关文章:

javascript - Google Maps API V3 构建包含多个邮政编码的多边形

javascript - 允许数字、空格、加号、连字符和括号的正则表达式

php - 在php中检索数据库记录集到数组中

javascript - 当 jQuery $.parseJSON 不喜欢 YouTube JSON 格式时,如何从 feed 中检索 JSON 元素

c# - 使用 http 方将 json 发送到 web api

javascript - Bootstrap 4轮播循环方法

javascript - 带日期选择器的 Acrobat PDF 表单

javascript - 为什么我无法访问 AngularJS Controller 的子元素?

javascript - jQuery addClass 仅以编号方式添加到父 div

javascript - 使用 Jquery On 将动态事件附加到元素(在动态元素上使用 jquery 插件)