[英]Lazy JSON.stringify
问题 -
用户使用库,将日志发送到后端。 该库有一个循环缓冲区,因此不会超过几百个元素。
但是,我们无法控制发送的元素的大小,因此有效载荷可能大于 10mb。
我想通过对有效负载的整体大小进行限制来减少这种情况。
但是,我认为没有办法获得对象的size
。
我在想的是一种懒惰的 JSON.stringify
var res = "[";
messages.forEach(m => {
if (res.length < MAX_SIZE) {
res += JSON.stringify(m);
res += ",";
})
});
res += "]"
有没有更好的办法?
对于后代,在 JSON.stringify 调用之前进行这种过滤会更简单。
即:检查messages
,用"..too large.."
替换太大的项目,然后字符串化。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.