Front | Back |
Сработает ли вызов функции до объявления в этом коде:sayHi();function sayHi() { alert("Hello"); }
|
Да, сработает.
|
Чему равно значение выражения 4 - "5" + 0xf - "1e1"?
|
Цифре
|
Что получится, если сложить true + false? Почему?
|
1
|
Чему равна сумма [] + 1 + 2? Почему?
|
12
|
Чему равно a + b + c?let a = 1;let b = { toString() {return '1'} };let c = 1;
|
111
|
Чему равен результат вызова в этом примере?function f() {let a = 5;return new Function('b', 'return a + b');}alert( f()(1) );
|
Будет ошибка.
|
Что выведет этот код?f.call(null);function f() { alert(this); }
|
Null
|
Какой результат будет у выражения ниже?null + {0:1}[0] + [,[1],][1][0]
|
2
|
Чему равно 0 || 1 && 2 || 3 ?
|
0
|
Создать объект без прототипа
|
Object.create(null)
|
Чему равна переменная name?let name = "пупкин".replace("п", "д")
|
дупкин
|
Чему равен typeof null в режиме use strict?
|
Object
|
[[Scope]] для new Function?
|
При создании функции с использованием new Function, её свойство [[Scope]] ссылается не на текущий LexicalEnvironment, а на window.
|
Напишите функцию sum, которая работает так: sum(a)(b) = a+b. Да, именно так, через двойные скобки (это не опечатка).Например:sum(1)(2) = 3\r\nsum(5)(-1) = 4
|
Чтобы вторые скобки в вызове работали – первые должны возвращать функцию.Эта функция должна знать про a и уметь прибавлять a к b. Вот так: function sum(a) {\r\n\r\n return function(b) {\r\n return a + b; // возьмет a из внешнего LexicalEnvironment\r\n };\r\n\r\n}\r\n\r\nalert( sum(1)(2) );\r\nalert( sum(5)(-1) );
|
Какой результат будет у выражения ниже?null + {0:1}[0] + [,[1],][1][0]
|
2
|