Результаты прохождения теста JavaScript основы пользователем Mikhail

Результат прохождения теста "JavaScript основы" - Пройден

+69

  • Кто проходил: Mikhail
  • Дата прохождения: 23.08.2018
Что выведет Alert?
alert(1/0); 
Ваши ответы
Infinity
Какая функция используется, если нужно спросить пользователя о чем-то и принять ответ "да" или "нет"?
Ваши ответы
confirm()
Каким будет результат выполнения данного кода?
function f(a,b,c) { } 
var arr = [,,,]; 
arr.length; 
f.length; 
Ваши ответы
3 3
Как правильно написать "Hello World" в окне предупреждения (alert box)?
Ваши ответы
alert("Hello World");
Какие сообщения выведет следующий код:
alert("1"); 
js: { 
alert("2"); 
break js; 
alert("3"); 
} 
alert("4"); 
Ваши ответы
1, 2, 4
Что из ниже указанного проверит что элемент arr (var arr = ...) является массивом?
Ваши ответы
Array.isArray(arr);
Объяснение:

1) typeof arr = "object" - не доказывает что это массив;
2) if (arr) { } - проверка на существование элемента;
3) if (arr.splice) { } - проверка, имеет ли
элемент метод splice(), так как
он есть только у массивов;
4) if (arr.constructor === Array) - проверка через конструктор;
5) Array.isArray(arr) - проверка через функцию isArray();
6) arr instanceof Array - проверка на экземпляр класса ;

Какую строку выведет alert?
var a = '1'; 
 var b = 1; 
 res = (a == b) + ',' + (a === b); 
 alert(res); 
Ваши ответы
true,false
Объяснение:

В этом примере при использовании оператора равно (==) сначала приводятся две переменные к числовому типу, а уже потом сравниваются их значения (подпункт 11.9.3 на стр. 80 документа "Standard ECMA-262"). Оператор строгого равно (===) сначала проверяет типы переменных, и если они совпадают, то осуществляется сравнивание их значений, иначе возвращается false (подпункт 11.9.6 на стр. 81 документа "Standard ECMA-262").

Что выведет этот код?
var a = [], 
   b = 1, 
   c = false, 
   d = []; 
console.log(typeof (b == c) + ' ' + (a == d) ); 
Ваши ответы
boolean, false
Объяснение:

1) b == c -> false,
typeof false = boolean;
2) [ ] == [ ], [ ] === [ ] -> false

Какие значения выдадут эти два метода при param = 10?
function A(param) { 
   var m = param; 
   m = m + 10; 
   return m + param; 
} 
 
function B(param) { 
   var n = param; 
   n = 20; 
   return param + n; 
} 
Ваши ответы
30 и 30
На форме расположены 2 элемента:
<input type="text" id="txtBody"/> 
<input type="button" onclick="btnClick()"/> 
 
После нажатия на кнопку, в текстовом поле должен отобразиться текст: «Нажата кнопка».
 
Выберите правильный вариант ответа - тела функции btnClick:
Ваши ответы
document.getElementById("txtBody").value = "Нажата кнопка";
Какой результат даного кода?
var a = 2; 
console.log(~a); 
Ваши ответы
-2
Объяснение:

Оператор ~ равносилен - (n + 1) то есть - (2 + 1) = -3

Дан код. Какое значение будет выведено в консоли?
console.log(checkValue(a));
var a = 1;
function checkValue(param) {
       if (param) {
            return +!!a;
     } else {
          return +!!a;
     }
} 
Ваши ответы
TypeError
Объяснение:

см. всплытие инструкций. Фленаган 6-е издание стр.114

Что выведет следующий код?
var a = 1; 
function f() { 
 console.log(a); // <---- что выведет эта строка? 
 var a = 5; 
} 
 
f(); 
Ваши ответы
1
Объяснение:

Дело в том, что в JavaScript объявление переменной является ее определеним во всем теле. Поэтому там будет undefined, так как переменная `a` объявленная в конце ф-ции, уже существует в ее начале как undefined.

Какими будут значения переменных a и b после выполнения данного фрагмента кода:
function Test(param) { 
   this.var1 = param; 
   var var2 = 'World'; 
} 
var test = new Test('Hello'); 
var a = test.var1; 
var b = test.var2; 
Ваши ответы
a='Hello', b='World'
Какие выражения имеют побочные эффекты операторов:
Ваши ответы
3 + 4;
Объяснение:

Вычисления простых выражений никак не отразятся на состоянии программы и никак не затронут последующие вычисления. Но все операторы, явно или не явно выполняющие операцию присвоения, имеют побочные эффекты. Так как повлияют на результат любого выражения, в котором используется эта переменная или свойство. Девид Флэнаган JavaScript. Подробное руководство 6-е издание. стр.87<br> ISBN 978-5-93286-215-5