Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Написать функцию для копирования объектов и массивов (https://javascript.ru/forum/misc/76247-napisat-funkciyu-dlya-kopirovaniya-obektov-i-massivov.html)

Marson 17.12.2018 18:56

Написать функцию для копирования объектов и массивов
 
Сделайте функцию copy, которая будет копировать ключи и значения объекта в новый объект. Копирование должно проверять типы данных, и делать копии вложенных массивов.
Вложенные объекты не копируются (просто присваиваются)

var person = {
  name: 'Ivan',
  age: 28,
  getFullName: {
    name: 'Kalyan',
    fathername: 'Idrisovich'
    surname: {lol: null};
  }
}

function copy(obj) {
  var copyObj = {}; 
  for (var key in obj) { 
    if (obj.hasOwnProperty(key)) { 
      if ("object"===typeof obj[key]) 
      copyObj[key] = copy(obj[key]); 
      else
      copyObj[key] = obj[key]; 
    }
  }
 return copyObj;
}
copy(person);


Правильно я написал код? Проверьте кто-нибудь будьте добры.

рони 17.12.2018 19:36

Marson,
строка 6 и 7 ???

рони 17.12.2018 19:48

Marson,
1.
Цитата:

Сообщение от Marson
var copyObj = {};

Цитата:

Сообщение от Marson
для копирования объектов и массивов

где массивы?
2.
Цитата:

Сообщение от Marson
if ("object"===typeof obj[key])


alert(typeof null);


Часовой пояс GMT +3, время: 18:04.