freeCodeCamp/guide/russian/certifications/javascript-algorithms-and-d.../basic-algorithm-scripting/mutations/index.md

6.9 KiB
Raw Blame History

title localeTitle
Mutations Мутации

:triangular_flag_on_post: Не забудьте использовать Read-Search-Ask если вы застряли. Попробуйте подключить программу :busts_in_silhouette: и напишите свой собственный код :pencil:

:checkered_flag: Проблема Объяснение:

  • Возвращает true, если строка в первом элементе массива содержит все буквы строки во втором элементе массива.

Связанные ссылки

:speech_balloon: Подсказка: 1

  • Если все в нижнем регистре, сравнивать будет легче.

попытаться решить проблему сейчас

:speech_balloon: Подсказка: 2

  • С нашими струнами можно было бы работать легче, если бы они были массивами персонажей.

попытаться решить проблему сейчас

:speech_balloon: Подсказка: 3

  • Петля может помочь. Используйте indexOf() чтобы проверить, является ли буква второго слова первой.

попытаться решить проблему сейчас

Осторожно, спойлеры!

предупреждающий знак

Решение впереди!

:beginner: Решение базового кода:

процедурный

function mutation(arr) { 
  var test = arr[1].toLowerCase(); 
  var target = arr[0].toLowerCase(); 
  for (var i=0;i<test.length;i++) { 
    if (target.indexOf(test[i]) < 0) 
      return false; 
  } 
  return true; 
 } 

:rocket: Код запуска

Код Объяснение:

Сначала мы делаем две строки в массиве строчными буквами. test проведет то, что мы ищем в target .
Затем мы прокручиваем наши тестовые символы, и если какой-либо из них не найден, мы return false .

Если все они будут найдены, цикл завершится, не возвращая ничего, и мы return true .

Связанные ссылки

:sunflower: Решение промежуточного кода:

декларативный

function mutation(arr) { 
  return arr[1].toLowerCase() 
    .split('') 
    .every(function(letter) { 
      return arr[0].toLowerCase() 
        .indexOf(letter) != -1; 
    }); 
 } 

:rocket: Код запуска

Код Объяснение:

Возьмите вторую строку, в нижнем регистре и превратите ее в массив; затем убедитесь, что каждая из его букв является частью нижней строки с нижним регистром.

Every будет в основном давать вам письмо по буквам для сравнения, которое мы используем с помощью indexOf в первой строке. indexOf даст вам -1, если текущая letter отсутствует. Мы проверяем, что это не так, потому что, если это произойдет даже один раз, every будет ложным.

Связанные ссылки

:clipboard: ПРИМЕЧАНИЯ ДЛЯ ВЗНОСОВ:

  • :warning: НЕ добавляйте решения, похожие на любые существующие решения. Если вы считаете, что это похоже, но лучше , попробуйте объединить (или заменить) существующее подобное решение.
  • Добавьте объяснение своего решения.
  • Классифицируйте решение в одной из следующих категорий - Basic , Intermediate и Advanced . :traffic_light:
  • Пожалуйста, добавьте свое имя пользователя, только если вы добавили соответствующее основное содержимое . ( :warning: НЕ удаляйте существующие имена пользователей )

Видеть :point_right: Wiki Challenge Solution Template для Wiki Challenge Solution Template для справки.