2018-10-10 18:03:03 -04:00
---
id: af2170cad53daa0770fabdea
title: Mutations
isRequired: true
challengeType: 5
2019-08-28 16:26:13 +03:00
forumTopicId: 16025
2018-10-10 18:03:03 -04:00
localeTitle: Мутации
---
## Description
2019-08-28 16:26:13 +03:00
< section id = 'description' >
Возвращает true, если строка в первом элементе массива содержит все буквы строки во втором элементе массива. Например, < code > [" hello" , " Hello" ]< / code > должен возвращать true, потому что все буквы во второй строке присутствуют в первом, игнорирующем случае. Аргументы < code > [" hello" , " hey" ]< / code > должны возвращать false, потому что строка " hello" не содержит " y" . Наконец, < code > [" Alien" , " line" ]< / code > должен возвращать true, потому что все буквы в «строке» присутствуют в «Alien». Н е забудьте использовать < a href = "http://forum.freecodecamp.org/t/how-to-get-help-when-you-are-stuck/19514" target = "_blank" > Read-Search-Ask,< / a > если вы застряли. Напишите свой собственный код.
< / section >
2018-10-10 18:03:03 -04:00
## Instructions
2019-08-28 16:26:13 +03:00
< section id = 'instructions' >
2018-10-10 18:03:03 -04:00
< / section >
## Tests
< section id = 'tests' >
```yml
tests:
2019-08-28 16:26:13 +03:00
- text: < code > mutation(["hello", "hey"])</ code > should return false.
testString: assert(mutation(["hello", "hey"]) === false);
- text: < code > mutation(["hello", "Hello"])</ code > should return true.
testString: assert(mutation(["hello", "Hello"]) === true);
- text: < code > mutation(["zyxwvutsrqponmlkjihgfedcba", "qrstu"])</ code > should return true.
testString: assert(mutation(["zyxwvutsrqponmlkjihgfedcba", "qrstu"]) === true);
- text: < code > mutation(["Mary", "Army"])</ code > should return true.
testString: assert(mutation(["Mary", "Army"]) === true);
- text: < code > mutation(["Mary", "Aarmy"])</ code > should return true.
testString: assert(mutation(["Mary", "Aarmy"]) === true);
- text: < code > mutation(["Alien", "line"])</ code > should return true.
testString: assert(mutation(["Alien", "line"]) === true);
- text: < code > mutation(["floor", "for"])</ code > should return true.
testString: assert(mutation(["floor", "for"]) === true);
- text: < code > mutation(["hello", "neo"])</ code > should return false.
testString: assert(mutation(["hello", "neo"]) === false);
- text: < code > mutation(["voodoo", "no"])</ code > should return false.
testString: assert(mutation(["voodoo", "no"]) === false);
2018-10-10 18:03:03 -04:00
```
< / section >
## Challenge Seed
< section id = 'challengeSeed' >
< div id = 'js-seed' >
```js
function mutation(arr) {
return arr;
}
mutation(["hello", "hey"]);
```
< / div >
< / section >
## Solution
< section id = 'solution' >
```js
2019-08-28 16:26:13 +03:00
function mutation(arr) {
let hash = Object.create(null);
arr[0].toLowerCase().split('').forEach(c => hash[c] = true);
return !arr[1].toLowerCase().split('').filter(c => !hash[c]).length;
}
mutation(["hello", "hey"]);
2018-10-10 18:03:03 -04:00
```
2019-08-28 16:26:13 +03:00
2018-10-10 18:03:03 -04:00
< / section >