Преобразование словаря javascript в массив / объект для передачи в jquery.params - PullRequest
2 голосов
/ 23 марта 2011

У меня есть переменная javascript, которая представляет собой словарь пар ключ-значение строки запроса.Мне нужно снова преобразовать этот словарь в строку запроса.Я использую jquery.param functin, но он принимает либо массив, либо объект.Как я могу преобразовать мою диктовскую переменную в массив / объект, который может принимать jquery.params.

Пробовал с использованием serializeArray, но он не работает.

Ответы [ 2 ]

9 голосов
/ 23 марта 2011

Метод jQuery.param может принимать массив i в следующем виде:

[{ name: 'asdf', value: '42' },{ name: 'qwerty', value: '1337' }]

Если в вашем словаре есть другие имена свойств, вы можете использовать метод jQuery.map для его преобразования. Пример:

arr = $.map(arr, function(e){
  return { name: e.key, value: e.val };
});
5 голосов
/ 23 марта 2011

Если я правильно понимаю ваш вопрос (некоторые примеры кода могут помочь!) Под «словарем», вы подразумеваете конструкцию, подобную:

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

или

var dict = {};
dict[key1] = value1;
dict[key2] = value2;

или, возможно:

var dict = {};
dict.key1 = value1;
dict.key2 = value2;

Если это так, вы должны знать, что все из них делают одно и то же, то есть устанавливают свойства для объектов JavaScript, и должны корректно сериализироваться jQuery.param. Кратко, объекты JavaScript - словари.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...