当前位置: 首页 > 面试题库 >

Javascript对象的查询字符串编码

单展
2023-03-14
问题内容

您是否知道将Javascript对象编码为string可通过GET请求传递的快速简单的方法?

jQuery,没有其他框架-只是纯Javascript :)


问题答案:

像这样?

serialize = function(obj) {

  var str = [];

  for (var p in obj)

    if (obj.hasOwnProperty(p)) {

      str.push(encodeURIComponent(p) + "=" + encodeURIComponent(obj[p]));

    }

  return str.join("&");

}



console.log(serialize({

  foo: "hi there",

  bar: "100%"

}));

// foo=hi%20there&bar=100%25

编辑:这也将转换递归对象(使用php“ array”表示法作为查询字符串)

serialize = function(obj, prefix) {

  var str = [],

    p;

  for (p in obj) {

    if (obj.hasOwnProperty(p)) {

      var k = prefix ? prefix + "[" + p + "]" : p,

        v = obj[p];

      str.push((v !== null && typeof v === "object") ?

        serialize(v, k) :

        encodeURIComponent(k) + "=" + encodeURIComponent(v));

    }

  }

  return str.join("&");

}



console.log(serialize({

  foo: "hi there",

  bar: {

    blah: 123,

    quux: [1, 2, 3]

  }

}));

// foo=hi%20there&bar%5Bblah%5D=123&bar%5Bquux%5D%5B0%5D=1&bar%5Bquux%5D%5B1%5D=2&bar%5Bquux%5D%5B2%5D=3


 类似资料:
  • 问题内容: 是否有任何JavaScript库可以根据查询字符串,样式生成字典? 可以像这样使用的东西: “查询字符串”是否在.NET领域之外称为其他名称?为什么不分解为键/值集合? 编辑:我已经编写了自己的函数,但是任何主要的库都可以这样做吗? 问题答案: 是否有任何JavaScript库可以根据查询字符串,样式生成字典? 可以像这样使用的东西: “查询字符串”是否在.NET领域之外称为其他名称?

  • 问题内容: 我想将Javascript对象编码为JSON字符串,但遇到了很多困难。 对象看起来像这样 我想将其放入JSON字符串以将其放入ajax请求中。 你明白了。不管我做什么,都行不通。所有JSON编码器(如json2等)都会产生 好吧,那对我没有帮助。基本上我想拥有类似php 函数的功能。 问题答案: 除非定义了变量,否则可能是造成您麻烦的原因。这样的事情会做你想要的: 您也可以一次完成所有

  • 问题内容: 如何在Angularjs中使用查询参数构建URL。 我看到了API $ location.search() 问题是$ location(url)是重定向到url。就我而言,我想为查询参数传递url和key:value对,并构建url。就像是 网址: params: 结果: 我喜欢使用该URL进行链接。我也看到了angular encoding ,字符。我可以避免吗? 编辑: 我的意图是

  • 我有一个对象标记,我正在使用它的data属性调用一个servlet,如下面的代码所示。我正在向这个url传递一个参数。如果此参数的值不是英语 我尝试添加一些其他查询字符串参数,如 我的代码是这样的: 我希望获得文件名参数值时的阿拉伯语值。

  • 本文向大家介绍用jQuery将JavaScript对象转换为querystring查询字符串的方法,包括了用jQuery将JavaScript对象转换为querystring查询字符串的方法的使用技巧和注意事项,需要的朋友参考一下 在get方式的参数传递中,常常需要将JavaScript对象,转换成查询字符串,比如: 会转换成 方法1:用JavaScript 输出: // foo=hi%20the

  • 问题内容: 我正在尝试查找有关如何序列化对象以查询字符串格式的信息,但是我所有的搜索都淹没了关于如何采用另一种方法(字符串/表格/任何以JSON格式)的结果。 我有 而且我要 有什么好方法吗?我不介意插件或其他什么-如果我找到的代码不是插件,无论如何我可能都会将其重写为一个… 问题答案: 您想要的: 具体来说,您想要这样: 当给出这样的东西: 将返回此: