javascript - 使用 jQuery.map 后使用 JSON.stringify 的问题

标签 javascript jquery json web-scraping

我正在编写一个小书签(最终将成为一个插件)以在指定的 div 下为 jQuery 中的列表项抓取网页。我在使用 JSON.stringify

时遇到问题

以下代码允许我将每个单独的项目转换为 JSON,但在使用 join 连接每个字符串时出现问题。

var dMap = $("div").filter($("#<div-id>")).find("li").map(function() {
    var iObject = {
        id: $(this).data('id'),
        text: $(this).text(),
        list_name: $(this).closest('div').attr('id')
    };
    return JSON.stringify(iObject);
});
console.log(dMap);

第二段代码正确地创建了数组中的每个对象,但生成的数组没有记录生成的 JSON。

var dMap = $("div").filter($("#,div-id.")).find("li").map(function() {
    return {
        id: $(this).data('id'),
        text: $(this).text(),
        list_name: $(this).closest('div').attr('id')
    };
});
console.log(dMap);
var json = JSON.stringify(dMap);
console.log(json);

有什么想法吗?

最佳答案

根据 .map 的文档:

As the return value is a jQuery-wrapped array, it's very common to get() the returned object to work with a basic array.

你试过吗:

var json = JSON.stringify(dMap.get());

关于javascript - 使用 jQuery.map 后使用 JSON.stringify 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11847933/

相关文章:

javascript - jQuery 中的 "Converting"具有多个音轨的音频播放器

javascript - 获取特定 channel 每分钟的推文数量

javascript - 在 Angular 中向 json 对象添加空数组

javascript - 如何从 TypeScript 中的父模块访问变量?

javascript - 提交表单时,HTML 输入复选框返回 'On' 而不是 'True'

json - OS X 中 xattr 的最大大小

javascript - 无法使用 php 将 json 数据传递给 typeahead

javascript - 由 OSM 数据转换而来的 Leaflet + GeoJson - 关系

javascript - 是否有任何离线的 HTML CSS JavaScript 编辑器,如 JSFiddle、jsbin、codepen 等?

javascript - 按钮选择器 --> 将数字添加到表单中的输入