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

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

+101

  • Кто проходил: DmitryDi
  • Дата прохождения: 04.06.2018
Что будет содержаться в s после выполнения следующего кода?
var s = 'Hello world'; 
s[0] = 'W'; 
Ваши ответы
'Hello world'
Объяснение:

В JavaScript строки являются неизменяемыми (immutable).

Какой результат даного кода?
var a = 2; 
console.log(~a); 
Ваши ответы
-3
Объяснение:

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

Что будет находиться в ch2 после выполнения следующего кода?
var ch1 = 'b'; 
var ch2; 
switch(ch1) { 
 case 'a': 
    ch2 = '1'; 
 case 'b': 
    ch2 = '2'; 
 case 'c': 
    ch2 = '3'; 
    break; 
 default: 
    ch2 = '4'; 
} 
Ваши ответы
3
Объяснение:

Требуется указать break для выхода из оператора switch.
http://www.w3schools.com/JS/js_switch.asp

что будет выведено в консоли?
var str;
var i = '0';
console.log(str+i); 
Ваши ответы
undefined0
Объяснение:

Суть в том, что переменная str НЕ инициализирована, а так как переменная i - это символ, то в результате имеем на выходе: undefined0

Каких побитовых операторов НЕТ в JavaScript (выберите все подходящие варианты)?
Ваши ответы
!
#
Объяснение:

Побитовые операторы:

Как правильно написать IF конструкцию, чтобы выполнялся некоторый код, когда i не равно 5.
Ваши ответы
if (i != 5)
Как можно уведомить пользователя, что JavaScript отключен в его браузере?
Ваши ответы
<noscript><span>У Вас отключён JavaScript...</span></noscript> 
Что из перечисленного не является корректным JavaScript выражением, описывающим цикл?
Ваши ответы
var i = 0; 
while (i < 5) do { 
   i++; 
} 
Что выведется в консоль?
var theArray = ['1', '2', '3'].map(parseInt);
console.log(theArray);
 
Ваши ответы
[1, NaN, NaN]
Объяснение:

Array.prototype.map передает в функцию-коллбэк 3 аргумента: элемент массива, индекс элемента и сам массив. А у parseInt 2 аргумента: число или подобное ему и система счисления. Следовательно, данный код эквивалентен следующему:

Аналогичны ли приведенные ниже две команды?
1. alert('proghub');
2. ALERT('proghub');
Ваши ответы
Нет
Объяснение:

В JavaScript регистр имеет значение. Вторая команда не будет восприниматься интерпретатором.

window['undefined'] === undefined
Ваши ответы
true
Объяснение:

undefined - свойство, определенное в глобальном объекте.

Что выведет этот код?
var a = []; 
console.log((a == a) + ' ' + (a == !a));
Ваши ответы
true true
Объяснение:

В первом выражении все понятно, идет сравнение ссылки с самой собой. А во втором операнд "!a" преобразовывается к boolean и соответственно порождает преобразование к boolean операнда "a".
[]==false (пустой массив => false),
![]==false (ссылка на объект (в данном случае на массив) с оператором ! => false)
т.е. [] == ![]

Каким будет результат выполнения следующего кода?
parseInt(1 / 0, 19); 
Ваши ответы
18
Объяснение:

При делении на ноль получаем "Infinity" парсер ищет "I" в 19-ти ричной системе счисления, находит и выдет 18.
why-does-parseint1-0-19-return-18

Какие утверждения из перечисленных верны?
function Test() { } 
var test = new Test(); 
Test.prototype.member='World'; 
var test2 = new Test(); 
 
var a = test.member;    // 1 
var b = test2.member;   // 2 
Ваши ответы
a содержит значение 'World'
b содержит значение 'World'
Выберите все вызовы parseFloat(), которые возвратят не число.
Ваши ответы
parseFloat("$12.34");
parseFloat(".21");
parseFloat();
Объяснение:

Вызовы parseFloat("$12.34") и parseFloat() возвратят NaN. Ответы parseFloat("23,45"); и parseFloat("56,") неверны, поскольку функция выведет все до запятой.