Javascript JSON.stringify объект, содержащий проблему сериализации массивов - PullRequest
1 голос
/ 20 февраля 2010

Я javascript У меня есть объект, который выглядит примерно так:

var myObj = 
{
   prop1: 1,
   prop2: 2,
   prop3: ["a","b","c","d","e"],
   prop4: 4,
   prop5: ["f","g","h","i"]
}

Это объект, содержащий ряд свойств. Каждое свойство может быть или не быть массивом.

  var serializedMyObj = JSON.stringify(myObj);

serializedMyObj (найдено при просмотре результатов функции сериализации в firebug):

"{ "prop1":1, "prop2":2, "prop3":["a","b","c","d", "e"], "prop4":4, "prop5":["f","g","h","i"] }"

, если я alert(serializedMyobj); показывает мне:

{ "prop1":1, "prop2":2, "prop3":[], "prop4":4, "prop5":[] }

Настоящая проблема заключается в том, что когда я передаю эти данные в PageMethop Asp.Net, сервер получает те же данные, которые я вижу, когда они отображаются в диалоговом окне предупреждения, а не в firebug. Где-то теряется значение массива и вводится только [].

Кто-нибудь знает, почему это произошло или как это исправить? Это, наверное, что-то простое, я упускаю из виду.

1 Ответ

1 голос
/ 20 февраля 2010

Я получаю следующий (правильный) вывод в Firefox:

{"prop1":1,"prop2":2,"prop3":["a","b","c","d","e"],"prop4":4,"prop5":["f","g","h","i"]}

Какой браузер вы используете?

Кроме того, я заметил, что myObj был строчным в JSON.stringify(myobj); -Я полагаю, это была просто опечатка?

...