clone.js 331 B

12345678910111213141516171819
  1. export function clone(obj) {
  2. var buf
  3. if (obj instanceof Array) {
  4. buf = []
  5. var i = obj.length
  6. while (i--) {
  7. buf[i] = clone(obj[i])
  8. }
  9. return buf
  10. } else if (obj instanceof Object) {
  11. buf = {}
  12. for (var k in obj) {
  13. buf[k] = clone(obj[k])
  14. }
  15. return buf
  16. } else {
  17. return obj
  18. }
  19. }