ForIn 循环有效,但 return 没有意义

ForIn Loop Works but return doesn't make sense

我只想从 api 调用中 console.log json return 的两个属性。我从未使用过请求库。当我尝试遍历 body 时,它只是 returns 字符串,我可以看到行车。使用 axios 我进行了调用并毫无问题地循环了它...

我尝试使用 for、forin 和 object 条目。我不明白输出。

const request = require("request");

async function GetPosts() {
    await request("https://jsonplaceholder.typicode.com/posts", function (error, response, body) {
        for (const key in body) {
            if (body.hasOwnProperty(key)) {
                const element = body[key];
                console.log(element);
            }
        }
    });
}
GetPosts();

我只想打印 json 结果的标题和 body 属性。

您需要调用JSON.parse()将响应体解析为对象。

然后当你遍历数组的元素时,你应该只打印你想要的属性,而不是整个对象。

const request = require("request");

async function GetPosts() {
    await request("https://jsonplaceholder.typicode.com/posts", function (error, response, body) {
        body = JSON.parse(body);
        body.forEach(item => {
            console.log(item.title, item.body);
        });
    });
}
GetPosts();