在我的react-native应用程序中,我需要对大对象进行字符串化(序列化)而不是阻塞js线程 - 使用其他线程的异步api,如下所示:
JSON.stringifyAsync({ foo: "bar" }).then(x => console.log(x));
请不要建议将JSON.stringify包装到Promise中,它只是推迟阻塞js线程。
答案 0 :(得分:6)
我认为目前无法做到这一点。对于node.js来说这是一个问题(请参阅here,here和here),我认为对于浏览器或其他JS来说情况更好发动机。
有一个EcmaScript提案(请参阅here)以添加函数JSON.parseAsync
和JSON.stringifyAsync
方法。我不知道这个提案的状态。根据提案:"没有办法透露这个提案的实际效果。" 所以看起来提议者同意目前还没有这样做的方法。
答案 1 :(得分:0)
也许你可以拆分对象并在最后合并处理过的部分。
或者做这样的事情:
async.eachOf(obj,function(value,key,callback){
async.setImmediate(function(){
// do something
});
}, function(err,reply){
});