将javascript字典转换为要在jquery.params中传递的数组/对象

将javascript字典转换为要在jquery.params中传递的数组/对象,javascript,jquery,arrays,dictionary,Javascript,Jquery,Arrays,Dictionary,我有一个javascript变量,它是querystring的键值对字典。我需要再次将此词典转换为查询字符串。我正在使用jquery.param functin,但它接受数组或对象。如何将dictionary变量转换为jquery.params可以接受的数组/对象 尝试使用serializeArray,但不起作用。如果我正确理解您的问题(一些代码示例可能会有所帮助!)“dictionary”指的是类似以下的构造: var dict = { key1: value1, key2: value2 …

我有一个javascript变量,它是querystring的键值对字典。我需要再次将此词典转换为查询字符串。我正在使用jquery.param functin,但它接受数组或对象。如何将dictionary变量转换为jquery.params可以接受的数组/对象


尝试使用serializeArray,但不起作用。

如果我正确理解您的问题(一些代码示例可能会有所帮助!)“dictionary”指的是类似以下的构造:

var dict = { key1: value1, key2: value2 … }
或:

或者可能:

var dict = {};
dict.key1 = value1;
dict.key2 = value2;
如果是这样,您应该知道所有这些都在做相同的事情,即设置JavaScript对象的属性,并且应该通过
jQuery.param
正确序列化。简而言之,JavaScript对象≈ 字典。

该方法可以采用以下形式的数组i:

[{ name: 'asdf', value: '42' },{ name: 'qwerty', value: '1337' }]
如果您的字典有其他属性名称,则可以使用该方法对其进行转换。例如:

arr = $.map(arr, function(e){
  return { name: e.key, value: e.val };
});
使用Object.values():


你能添加一个你用来初始化这本词典的代码的例子吗?我们的两个答案都涉及到对代码进行某些假设!:)
arr = $.map(arr, function(e){
  return { name: e.key, value: e.val };
});
var arr = Object.values(some_dict)