JavaScript Flashcards
Что делает символ %
Определяет остаток от деления двух чисел - 12 % 5 = 2 // потому что 12 на 5 не делится. но можно поделить на 2. 5*2=10 и еще до 12 остается 2.
Зачем делать свой конструктор объекта
что бы было не 3 строки при создании объекта: var harry_potter = new Object(); harry_potter.pages = 350; harry_potter.author = "J.K. Rowling";
а 1: var the_hobbit = new Book(320, "J.R.R. Tolkien")
Что делает hasOwnProperty
возвращает ТРУ если у объекта есть свойства, указанные в аргументе этой функции
Для чего нужен прототип
prototype нужен для ООП, в случае если нету прямого доступа к коду, где создавался класс. Через прототип мы можем добавить метод к этому классу не меняя код самого класса:
className.prototype.newMethod = function() {
statements;
};
А еще можно создать новый класс на основе уже готового:
className.prototype = new oldClassName();
Если определить переменную через var в функции или классе, что произойдет?
нельзя будет получить эту переменную вне функции или класса
Как можно сократить такое выражение: if(a){ return a.member; }else{ return a; }
return a && a.member;
Что это означает: label : for( ; ; ) { if ( ) { break label; } }
Можно давать имена циклам, и обрывать их
Как задать цвет бекграунда элемента используя JS
ElementName.style.backgroundColor = “white”
Зачем в ХТМЛ-е давать ссылку на внешнюю js библиотеку, а не располагать ее у себя на хостинге
Мощные CDN сервера быстрее доставят библиотеку чем свой хостинг. + место экономится.
Еще важно что эти библиотеки много кто использует и обычно у юзеров они загружены в кеш браузера
+ есть лимит у браузеров на количество запросов с одного домена, а подключая библиотеку с внешних источников домен уже другой
Что такое “use strict”
По умолчанию JS выполняет код даже если там были незначительные ошибки. Включив этот мод браузер будет выдавать даже самые незначительные ошибки.
Что бы его включить, в начале скрипта нужно написать “use strict”;
Что делает строка return; в конце кода if
если условие выполнено - то вышестоящая функция останавливается
Почему можно не заканчивать строку точкой с запятой
JS автоиатически добавляет точку с запятой для каждой строки
Что будет если сравнить 2 строки “A” < “B”
Выдаст тру, потому что А стоит выше по алфавиту чем В
Как интерпретируется следующий код, помещеный внутри функции:
console.log(a); var a = 11;
var a;
console.log(a);
a=11;
И если вне функции была уже переменная “а”, то она затрется внутри функции и при ее выводе получим андефайнд.
зачем начинать свой скрипт с ;
если в скрипте который загружается перед нашим скриптом будет в конце пропущена ; то ошибки не будет, так как мы ставим эту ; в начале нашего