Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | 1x 11x 11x 7x 4x 2x 2x 2x 2x 2x 2x 3x 4x | import { type } from "./type.js";
Array.from('abc') // ['a', 'b', 'c']
export function clone(source) {
const t = type(source);
if (t !== "object" && t !== "array") {
return source;
}
let target;
if (t === "object") {
target = {};
for (let i in source) {
Eif (source.hasOwnProperty(i)) {
target[i] = clone(source[i]); // 注意这里
}
}
} else {
target = [];
for (let i = 0; i < source.length; i++) {
target[i] = clone(source[i]); // 注意这里
}
}
return target;
}
|