当我正在开发一个项目时,我遇到了这段代码:
var params = JSON.parse(JSON.stringify(defaultParams));
Run Code Online (Sandbox Code Playgroud)
这段代码实际上做了什么吗?
MrC*_*ode 12
这是一种克隆对象的方法,因此您可以获得一个唯一但与克隆对象具有相同属性的完整副本.
var defaultParams = { a : 'b' };
var params = JSON.parse(JSON.stringify(defaultParams));
console.log( params.a ); // b
console.log( defaultParams.a ); // b
console.log( params === defaultParams ); // false
Run Code Online (Sandbox Code Playgroud)
上面的输出false
是因为即使两个对象都具有a
属性,但是有值b
,有不同的对象彼此独立(它们不引用相同的引用).
JSON方法仅适用于基本属性 - 没有函数或方法.
归档时间: |
|
查看次数: |
2943 次 |
最近记录: |