如何限制函数中的递归深度?
最佳答案
这是一个简单的函数,当以前见过某个对象时,它会插入 '...'
,从而防止无限递归。
function safeStringify (value) {
const seen = new Set()
return JSON.stringify(value, (k, v) => {
if (seen.has(v)) { return '...' }
if (typeof v === 'object') { seen.add(v) }
return v
})
}
关于JavaScript 如何限制 JSON.stringify 中的递归深度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39249490/