2.9 KiB
Raw Blame History

id, title, challengeType, forumTopicId, localeTitle
id title challengeType forumTopicId localeTitle
587d7b7a367417b2b2512b12 Copy Array Items Using slice() 1 301158 Копирование элементов массива Использование среза ()

Description

Следующий метод, который мы рассмотрим, - slice() . slice() , вместо того, чтобы модифицировать массив, копировать или извлекать заданное количество элементов в новый массив, оставляя массив вызываемым без изменений. slice() принимает только 2 параметра - первый - это индекс, с которого нужно начинать извлечение, а второй - это индекс, в котором останавливается извлечение (извлечение произойдет до, но не включает элемент в этот индекс). Учти это:
пусть weatherConditions = ['rain', 'snow', 'sleet', 'hail', 'clear'];

let todaysWeather = weatherConditions.slice (1, 3);
// todaysWeather равно ['snow', 'sleet'];
// weatherConditions по-прежнему равно ['rain', 'snow', 'sleet', 'hail', 'clear']
Фактически, мы создали новый массив, извлекая элементы из существующего массива.

Instructions

Мы определили функцию, forecast , которая принимает массив в качестве аргумента. Измените функцию, используя slice() чтобы извлечь информацию из массива аргументов и вернуть новый массив, содержащий элементы 'warm' и 'sunny' .

Tests

tests:
  - text: <code>forecast</code> should return <code>["warm", "sunny"]</code>
    testString: assert.deepEqual(forecast(['cold', 'rainy', 'warm', 'sunny', 'cool', 'thunderstorms']), ['warm', 'sunny']);
  - text: The <code>forecast</code> function should utilize the <code>slice()</code> method
    testString: assert(/\.slice\(/.test(code));

Challenge Seed

function forecast(arr) {
  // change code below this line

  return arr;
}

// do not change code below this line
console.log(forecast(['cold', 'rainy', 'warm', 'sunny', 'cool', 'thunderstorms']));

Solution

function forecast(arr) {
  return arr.slice(2,4);
}