В общем случае функции сериализовать нельзя.
Во первых, функция может быть создана методом bind(), тогда она будет выглядеть примерно так: "function () { [native code] }"
Во вторых, функция при своем создании может замыкать переменные, тогда строка будет правдоподобной, но всё равно бесполезной.
Потому задача сомнительная. Надо смотреть как функции появились. Пришли с сервера? они уже строки. Были как-то созданы с замыканием? Надо отдельно сохранять замыкания.
Хотя, если функции простые и используют только this и глобалы, то сериализуй и забудь тот бред, который я тут написал =)
|