<!DOCTYPE html>
<html>
<script src="https://uk.js.cx/test/libs.js"></script>
<script src="test.js"></script>
<p>
У нас є вбудований для масивів метод <code>arr.filter(f)</code>. Він
фільтрує всі елементи через функцію <code>f</code>. Якщо вона повертає
<code>true</code>, цей елемент повертається в отриманому масиві.
</p>
<p>Зробіть набір <strong>«готових до використання»</strong> фільтрів:</p>
<p>
<strong>inBetween(a, b)</strong> – фільтрує елементи, які більші за
<code>a</code> та менші за <code>b</code>. Також має включати елементи, які
дорівнюють цим значенням.
</p>
<p>
<strong>inArray([...])</strong> – фільтрує елементи, які включено у заданий
масив.
</p>
<p>Використання має бути таким:</p>
<p>
<code>arr.filter(inBetween(3, 6))</code> – вибирає лише значення від 3 до 6.
</p>
<p>
<code>arr.filter(inArray([1, 2, 3]))</code> – вибирає лише елементи, які
включені у масив <code>[1, 2, 3]</code>.
</p>
<p>Наприклад:</p>
<pre><code>
/* .. ваш код для inBetween та inArray */
let arr = [1, 2, 3, 4, 5, 6, 7];
alert( arr.filter(inBetween(3, 6)) ); // 3,4,5,6
alert( arr.filter(inArray([1, 2, 10])) ); // 1,2
</code></pre>
<script>
let arr = [1, 2, 3, 4, 5, 6, 7];
function inBetween(a, b) {
// ...ваш код...
}
function inArray(arr) {
// ...ваш код...
}
</script>
</html>
describe('inArray', function () {
let arr = [1, 2, 3, 4, 5, 6, 7];
it('повертає значення, які включено до масиву', function () {
let filter = inArray(arr);
assert.isTrue(filter(5));
assert.isFalse(filter(0));
});
});
describe('inBetween', function () {
it('повертає масив зі значеннями між заданими', function () {
let filter = inBetween(3, 6);
assert.isTrue(filter(5));
assert.isFalse(filter(0));
});
});