кодесурса
«JavaScript

JavaScript: создать глубокий клон объекта

script1adsense2code
script1adsense3code

Основы JavaScript (синтаксис ES6): упражнение 71 с решением

Напишите программу на JavaScript для создания глубокого клона объекта.

Пример решения: -

HTML-код:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <title>Create a deep clone of an object</title>
</head>
<body>
</body>
</html>

Код JavaScript:

//#Source https://bit.ly/2neWfJ2 
const deepClone = obj => {
  let clone = Object.assign({}, obj);
  Object.keys(clone).forEach(
    key => (clone[key] = typeof obj[key] ==='object' ? deepClone(obj[key]) : obj[key])
  );
  return Array.isArray(obj) ? (clone.length = obj.length) && Array.from(clone) : clone;
};
const a = { foo: 'bar', obj: { a: 1, b: 2 } };
const b = deepClone(a); // a !== b, a.obj !== b.obj
console.log(b)

Пример вывода:

 { "Foo": "бар", "OBJ": { "а": 1, "б": 2}}

Блок - схема:

«Блок-схема:

Демонстрация в реальном времени:

См. Pen javascript-basic-упражнение-71-1 от w3resource ( @ w3resource ) в CodePen .


Улучшите этот пример решения и опубликуйте свой код через Disqus

Предыдущий: Напишите программу на JavaScript для подсчета вхождений значения в массив.
Далее: Напишите программу на JavaScript, чтобы определить, открывается ли веб-сайт на мобильном устройстве или на настольном компьютере / ноутбуке.

Каков уровень сложности этого упражнения?

Новый контент: Composer: менеджер зависимостей для PHP , R программирования


script1adsense4code
script1adsense5code
disqus2code
script1adsense6code
script1adsense7code
script1adsense8code
buysellads2code