- Напишите пример чистой и нечистой функции для добавления значения в массив
// Impure Example let arr = []; const impureAddition = (num) => arr.push(num); impureAddition(10); // Pure Example const pureAddition = (num) => (newArr) => [...newArr, num]; pureAddition(10)([]);
2. Что будет на выходе приведенного ниже кода?
console.log(['a']+['b']);
Ответ: "аб"
3. Что будет на выходе приведенного ниже кода?
console.log([1, 3, 4, 2]["sort"]());
Ответ: [1,2,3,4]
4. Что будет на выходе приведенного ниже кода?
console.log([1, 3, 4, 2]["sort"]["constructor"](alert("Boom")));
Ответ: Оповещения Boom
5. Что будет на выходе приведенного ниже кода?
const clothes = ['jacket', 't-shirt']; clothes.length = 0; clothes[0]; // => ???
Ответ:
undefined
одежда.длина = 0; удаляет массив и, следовательно, одежда [0] не существует
6. Что будет на выходе приведенного ниже кода?
const length = 4; const numbers = []; for (var i = 0; i < length; i++);{ numbers.push(i + 1); } numbers;
Ответ: [5]
Почему? =› после цикла for и перед исполняемым блоком стоит точка с запятой, а var делает iглобальным . Таким образом, ко мне можно получить доступ после окончания цикла со значением 4.
7. Что будет на выходе приведенного ниже кода?
const length = 4; const numbers = []; for (let j = 0; j < length; j++);{ numbers.push(j + 1); // reference error } console.log(j); // reference error numbers;
Ответ: здесь let не создает глобальную переменную и, следовательно, выдает ошибку
8. Как очистить массив в JavaScript?
var list = ['a', 'b', 'c', 'd', 'e', 'f']; -> list.length = 0 -> list = [] -> arrayList.splice(0, arrayList.length);
9. Что выведет приведенный ниже код?
var arr1 = "john".split(''); var arr2 = arr1.reverse(); // returns the ref to arr1 only var arr3 = "jones".split(''); arr2.push(arr3); console.log("array 1: length=" + arr1.length + " last=" + arr1.slice(-1)); console.log("array 2: length=" + arr2.length + " last=" + arr2.slice(-1));
Ответ:
«массив 1: length=5 last=j,o,n,e,s»
«массив 2: length=5 last=j,o,n ,е,с”
Поскольку и arr1, и arr2 относятся к одному и тому же массиву, обратный метод для массива возвращает тот же массив, а не новый массив.