用JSON.stringify去实现深拷贝的弊端


无法处理function啦还有RegExp啦,还有无法处理循环引用对象(这个我还没有test)

就前两点的话

var a={
    a:1,
    b:new RegExp('test'),
    c:function(){}
}

然后var b=JSON.parse(JSON.stringify(a))

输出b的话

{
a: 1
b: {}
}

就这样啦

c:function都没有复制过来,RegExp对象没有处理

 

 

还有什么的话欢迎补充啦

------------------------------

我晕 好像我看stackoverflow上面这个弊端还蛮多的

 you do not use Dates, functions, undefinedInfinity, RegExps, Maps, Sets, Blobs, FileLists, ImageDatas, sparse Arrays, Typed Arrays or other complex types within your object, a very simple one liner to deep clone an object is:

这么多都不能处理呢


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM