javascript - 展平一个 javascript 对象以作为查询字符串传递

标签 javascript jquery javascript-objects flatten

我有一个 javascript 对象,我需要将其展平为一个字符串,以便我可以作为查询字符串传递,我该怎么做?即:

{ cost: 12345, insertBy: 'testUser' } 将变为 cost=12345&insertBy=testUser

我不能为此调用使用 jQuery AJAX 调用,我知道我们可以使用它并将对象作为 data 传递,但在这种情况下不行。不过,使用 jQuery 来展平对象是可以的。

谢谢。

最佳答案

这是一个非 jQuery 版本:

function toQueryString(obj) {
    var parts = [];
    for (var i in obj) {
        if (obj.hasOwnProperty(i)) {
            parts.push(encodeURIComponent(i) + "=" + encodeURIComponent(obj[i]));
        }
    }
    return parts.join("&");
}

关于javascript - 展平一个 javascript 对象以作为查询字符串传递,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5505085/

相关文章:

javascript - Backbone 模型未正确调用销毁回调

javascript - 对象不工作的 JsDoc 联合类型

javascript - 我有点困惑如何将我的三个功能混合在一起以使其简短

javascript - 显示更多 - 显示更少显示 31 行而不是 30 行

javascript - 合并对象数组

javascript - JS如何返回一个城市的居住人数?

JavaScript - 使用 requireJS 加载 Bluebird 模块

javascript - 使用 JavaScript ES6 模块导入现有库

jquery - 旋转 div 的动画 scaleX

Javascript:在子对象属性中访问父对象的属性