在nodejs中将js对象写入文件(包括方法)?

在nodejs中将js对象写入文件(包括方法)?,第1张

在nodejs中将js对象写入文件(包括方法)?

就像@AnthonySottile之前说的那样,这可能非常危险,我不确定是否有很好的用例,但是对于踢和傻笑,您需要编写自己的递归序列化器。像这样:

var toString = Object.prototype.toString;function dump_object(obj) {    var buff, prop;    buff = [];    for (prop in obj) {        buff.push(dump_to_string(prop) + ': ' + dump_to_string(obj[prop]))    }    return '{' + buff.join(', ') + '}';}function dump_array(arr) {    var buff, i, len;    buff = [];    for (i=0, len=arr.length; i<len; i++) {        buff.push(dump_to_string(arr[i]));    }    return '[' + buff.join(', ') + ']';}function dump_to_string(obj) {    if (toString.call(obj) == '[object Function]') {        return obj.toString();    } else if (toString.call(obj) == '[object Array]') {        return dump_array(obj);    } else if (toString.call(obj) == '[object String]') {        return '"' + obj.replace('"', '\"') + '"';    } else if (obj === Object(obj)) {        return dump_object(obj);    }    return obj.toString();}

这将处理大多数类型,但是总是有一个奇怪的问题将其弄乱的机会,因此 我不会在生产中使用它 。之后,反序列化就像下面这样简单:

eval('var test = ' + dump_to_string(obj))


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5475361.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-12
下一篇 2022-12-12

发表评论

登录后才能评论

评论列表(0条)

保存