Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Array to json


Автор: SneG0K 17.1.2010, 19:51
Есть массив или объект с данными. Как его преобразовать в json объект, для передачи на сервер?

Автор: 12345c 17.1.2010, 20:46
http://blogs.sitepointstatic.com/examples/tech/json-serialization/index.html
"Cross-browser JSON Serialization in JavaScript"

Цитата
Код
/**
 * Implements JSON stringify and parse functions
 * v1.0
 *
 * By Craig Buckler, Optimalworks.net
 *
 * As featured on SitePoint.com
 * Please use as you wish at your own risk.
*
 * Usage:
 *
 * // serialize a JavaScript object to a JSON string
 * var str = JSON.stringify(object);
 *
 * // de-serialize a JSON string to a JavaScript object
 * var obj = JSON.parse(str);
 */

var JSON = JSON || {};

// implement JSON.stringify serialization
JSON.stringify = JSON.stringify || function (obj) {

    var t = typeof (obj);
    if (t != "object" || obj === null) {

  // simple data type
  if (t == "string") obj = '"'+obj+'"';
  return String(obj);

    }
    else {

  // recurse array or object
  var n, v, json = [], arr = (obj && obj.constructor == Array);

  for (n in obj) {
    v = obj[n]; t = typeof(v);

    if (t == "string") v = '"'+v+'"';
    else if (t == "object" && v !== null) v = JSON.stringify(v);

    json.push((arr ? "" : '"' + n + '":') + String(v));
  }

  return (arr ? "[" : "{") + String(json) + (arr ? "]" : "}");
    }
};


// implement JSON.parse de-serialization
JSON.parse = JSON.parse || function (str) {
    if (str === "") str = '""';
    eval("var p=" + str + ";");
    return p;
};

Автор: SneG0K 17.1.2010, 22:58
Решил использовать jquery.json 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)