freeCodeCamp/curriculum/challenges/russian/02-javascript-algorithms-an.../es6/use-destructuring-assignmen...

3.1 KiB
Raw Blame History

id title challengeType videoUrl localeTitle
587d7b89367417b2b2512b4b Use Destructuring Assignment to Assign Variables from Arrays 1 Использование назначения назначения для назначения переменных из массивов

Description

ES6 делает массивы деструктуризации такими же легкими, как и объекты разрушения. Одним из ключевых различий между оператором спреда и деструктурированием массива является то, что оператор распространения распаковывает все содержимое массива в список, разделенный запятыми. Следовательно, вы не можете выбирать, какие элементы вы хотите назначить переменным. Уничтожение массива позволяет нам делать именно это:
const [a, b] = [1, 2, 3, 4, 5, 6];
console.log (a, b); // 1, 2
Переменной a присваивается первое значение массива, а b - второе значение массива. Мы также можем получить доступ к значению по любому индексу в массиве с деструктурированием, используя запятые для достижения желаемого индекса:
const [a, b ,,, c] = [1, 2, 3, 4, 5, 6];
console.log (a, b, c); // 1, 2, 5

Instructions

Используйте назначение destructuring для обмена значениями a и b чтобы a получил значение, сохраненное в b , и b получает значение, сохраненное в a .

Tests

tests:
  - text: Значение <code>a</code> должно быть 6 после замены.
    testString: 'assert(a === 6, "Value of <code>a</code> should be 6, after swapping.");'
  - text: Значение <code>b</code> должно быть 8 после замены.
    testString: 'assert(b === 8, "Value of <code>b</code> should be 8, after swapping.");'
  - text: Используйте деструктурирование массива для обмена a и b.
    testString: '// assert(/\[\s*(\w)\s*,\s*(\w)\s*\]\s*=\s*\[\s*\2\s*,\s*\1\s*\]/g.test(code), "Use array destructuring to swap a and b.");'

Challenge Seed

let a = 8, b = 6;
(() => {
  "use strict";
  // change code below this line

  // change code above this line
})();
console.log(a); // should be 6
console.log(b); // should be 8

Solution

// solution required