json序列化反序列化后function丢失

------------恢复内容开始------------

最近在做echarts相关功能时遇到个问题,需要将option存入库里。

但取出来发现function没了。

这么操作一下就可以了。

// json对象转换成字符串
var s=JSON.stringify(json, function(key, val) {
	if (typeof val === 'function') {
		return val + '';
	}
	return val;
});
// json字符串转换成对象
JSON.parse(s,function(k,v){
	if(v.indexOf && v.indexOf('function') > -1){
		return eval("(function(){return "+v+" })()")
	}
	return v;
});

  

原文地址:https://www.cnblogs.com/emojio/p/12388956.html