javascript - 如何获取没有对象编号的 json 对象?

标签 javascript jquery json rest

我有一个简单的 json 对象,它会输出 4 个项目,每个项目的属性都完全不同。我已经显示了 json 和 4 个名为 meta.work_content 的对象,如下所示:

[Object, Object, Object, Object]

我可以在控制台中打开它们并查看对象,如下所示:

0: Object
1: Object
2: Object
3: Object

我可以进一步研究每一个等等。在我的 javascript 中,我有一个简单的 ajax 请求,通过以下设置获取项目:

var getPosts = function() {

        $.ajax({
          url: '/wp-json/posts?type=case-studies',
          data: {
            filter: {
            'name': _last
            }
          },
          success: function ( dataS ) {
            //List some global variables here to fetch post data
            // We use base as our global object to find resources we need
            var base = dataS[0];
            console.log(base);
            var postContent = base.content;
            var postTitle = base.title;
            // Main Image ACF object
            var featuredImage = base.meta.main_image;
            // Gallery ACF object
            var nodes = base.meta.work_content;
            // output ACF objects
            console.log(nodes);
          },
          cache: false
        });

    };

现在棘手的部分来了,我想访问每个 meta.work_content 对象,但不使用它来实现 base.meta.work_content[0], base.meta.work_content [1] 等,因为每个商品的订单都会发生变化,因此这些数字将无关紧要。

需要根据其对象名称而不是[0],[1],[2]来访问这些项目,因为这是行不通的。

干杯

最佳答案

尝试使用以下内容:

$(document).ready(function() {
    var objects = {
        // Key `object1` which contains sertain properties
        object1: { name: "Name" },

        // Key `object2` which contains sertain properties
        object2: { firstname: "Fname" }
    };

    alert(objects.object1.name); // eg Name
    alert(objects.object2.firstname); // eg Fname

    // Check if object exists
    if(objects.object1)
    {
        // Do something with the properties of object1
    }
});

更新

使用您的示例:

success: function ( dataS ) {
    var nodes = dataS; // Eg nodes is like objects in my example above

    // Object 1
    var base = nodes.object1; // Eg object1 is the name of your object
    var postContent = base.content;
    var postTitle = base.title;
    var featuredImage = base.meta.main_image;
},

关于javascript - 如何获取没有对象编号的 json 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30997920/

相关文章:

javascript - Xpath 函数在剧作家中不起作用

javascript - 调整浏览器大小后伪元素移动

javascript - 如果鼠标在 div 上移出 5 秒后未返回鼠标悬停,则更改 div 颜色,然后更改 div 的颜色

javascript - 继续执行脚本之前等待 AJAX 响应

javascript - 将 JSON 空数组转换为空字符串

php - 如何在 PHP 中使用多行返回 JSON 进行内部连接

javascript - Jquery中有点击事件的反义词吗?

javascript - 如何使用 Django 后端保护 AJAX 调用?

javascript - 遍历 div,然后遍历其中的列表项

c# - 如何模拟 JsonReader 单元测试自定义 JsonConverter