1 | import isArray from './is-array';
|
2 | var clone = function (obj) {
|
3 | if (typeof obj !== 'object' || obj === null) {
|
4 | return obj;
|
5 | }
|
6 | var rst;
|
7 | if (isArray(obj)) {
|
8 | rst = [];
|
9 | for (var i = 0, l = obj.length; i < l; i++) {
|
10 | if (typeof obj[i] === 'object' && obj[i] != null) {
|
11 | rst[i] = clone(obj[i]);
|
12 | }
|
13 | else {
|
14 | rst[i] = obj[i];
|
15 | }
|
16 | }
|
17 | }
|
18 | else {
|
19 | rst = {};
|
20 | for (var k in obj) {
|
21 | if (typeof obj[k] === 'object' && obj[k] != null) {
|
22 | rst[k] = clone(obj[k]);
|
23 | }
|
24 | else {
|
25 | rst[k] = obj[k];
|
26 | }
|
27 | }
|
28 | }
|
29 | return rst;
|
30 | };
|
31 | export default clone;
|
32 |
|
\ | No newline at end of file |