JavaScript — увлекательный и гибкий язык программирования. Это одна из основных технологий веб-разработки, которую можно использовать как во внешнем, так и во внутреннем интерфейсе. Сегодня я собираюсь поговорить о некоторых основных принципах JavaScript. Итак, без дальнейших рассуждений приступим.

1. Значения истинности и ложности JavaScript.

Ответ. Истинные и ложные значения — это те, которые возвращают истину или ложь, когда встречаются в логическом контексте. Программист часто использует эти значения для сравнения с вводом программы и получения ожидаемого результата.

Следующие шесть значений считаются ложными значениями:

1. False
2. Undefined
3. Null
3. “” or ‘’
5. NaN
6. 0

Кроме них все считается истинным значением.

2. Разница между Null и Undefined.

Ответ: null и undefined — это типы данных в JavaScript. Null — это специальное значение, означающее «нет значения». Null — это особый объект, потому что typeof null возвращает объект. С другой стороны, undefined означает, что переменная не была объявлена ​​или ей не было присвоено значение.

Пример нуля:

const b = null;
console.log(b);
console.log(typeof(b));

Вывод:

нулевой

объект

Пример неопределенного:

const b = undefined;
console.log(b);
console.log(typeof(b));

Вывод:

неопределенный

неопределенный

3. Разница между двойным равным (==) и тройным равным (===).

Ответ: Двойное равенство (==) и тройное равенство (===) работают для строго равных значений, когда они имеют одинаковую последовательность символов, одинаковую длину и одинаковые символы в соответствующих позициях. Но основное отличие заключается в том, что двойное равенство не заботится о том, является ли переменная того же типа или нет, а тройное равенство работает только со строго одинаковыми значениями одного и того же типа.

Пример двойного равенства:

const b = 555;
const c = “555”
console.log(b == c);

Вывод:

истинный

Потому что double equal не беспокоится о типах значений.

Пример тройного равенства:

const b = 555;
const c = “555”
console.log(b === c);

Вывод:

ложный

Потому что тройное равенство также строго проверяет тип значения.

4. Инкапсуляция и приватная переменная в JavaScript?

Ответ: Инкапсуляция — одна из фундаментальных концепций ООП. Инкапсуляция в JavaScript — это механизм объединения данных (переменных) и кода, воздействующего на данные (методы), как единое целое. Чтобы добиться инкапсуляции в JavaScript: -

  • Используйте ключевое слово var, чтобы сделать элементы данных закрытыми.
  • Используйте методы установки для установки данных и методы получения для получения этих данных.

Инкапсуляция позволяет нам обрабатывать объект, используя следующие свойства:

Чтение/запись — здесь мы используем методы установки для записи данных, а методы получения считывают эти данные.

Только чтение — в этом случае мы используем только геттер-методы.

Только запись — в этом случае мы используем только методы установки.

Пример инкапсуляции:

var employee = {
name : “Aditya Chaturvedi”,
};
console.log(employee.name);
employee.name = “Rahul Khanna”;
console.log(employee.name);

Вывод:

Адитья Чатурведи

Рахул Кханна

Частная переменная: частные переменные — это те, которые видны только классу, к которому они принадлежат. В JavaScript частная переменная объявляется с помощью «#» в начале имени переменной.

Пример частной переменной:

#var_name = ‘rashed’

5. Пузырь событий с примером?

Ответ. Всплывающие события — это метод распространения событий в HTML DOM API, когда событие находится в элементе внутри другого элемента, и оба элемента зарегистрировали дескриптор этого события. Это процесс, который начинается с элемента, вызвавшего событие, а затем поднимается до содержащихся элементов в иерархии. При всплытии событий событие сначала захватывается и обрабатывается самым внутренним элементом, а затем распространяется на внешние элементы.

Пример:

<div>
<ul>
<li></li>
</ul>
</div>

В приведенной выше структуре предположим, что в элементе li произошло событие щелчка.

В модели захвата событие сначала будет обрабатываться элементом div (сначала будут срабатывать обработчики событий щелчка в элементе div), затем в элементе ul и, наконец, в целевом элементе li.

В всплывающей модели произойдет обратное: событие сначала будет обрабатываться элементом li, затем элементом ul и, наконец, элементом div.

6. Стрелочная функция, несколько параметров и тело функции.

Ответ: Функция стрелки позволяет нам быстро определить функцию JavaScript с помощью оператора стрелки (=›). Мы можем использовать стрелочную функцию с параметром, без параметра, даже с несколькими операторами.

Пример:

const arrow = () =>{
return ‘Arrow Function’;
}
console.log(arrow());

Вывод:

Функция стрелки

Несколько параметров: мы можем использовать другой метод для передачи нескольких параметров. Один из лучших способов — использовать оператор спреда. Оператор распространения в основном используется в массиве переменных, где ожидается более 1 значения. Оператор распространения можно использовать во многих случаях, например, когда мы хотим расширить, скопировать, объединить с математическим объектом.

Пример нескольких параметров:

function sum(…values) {
let sum = 0;
for (let i = 0; i < values.length; i++) {
sum += values[i];
}
return sum;
}
console.log(sum(1));
console.log(sum(1, 2, 3, 4, 5));

Вывод:

1

15

Тело функции: тело функции — это часть области, в которой происходит оценка функции. Тело функции — это область, в которой параметр обрабатывается для возврата или вывода ожидаемого результата.

Пример:

function sum(a, b) {
return a + b;//function body
}
console.log(sum(1, 2));

7. Как работает рекурсия и рекурсия против итерации в JavaScript?

Ответ: Рекурсия — это процесс, в котором функция вызывает сама себя. Его можно использовать вместо цикла. Этот метод позволяет разбить сложные проблемы на простые, которые легче решить.

Пример:

const fact = n =>{
if(n <= 0){
return 1;
}
else{
return n * fact(n — 1);
}
}
console.log(fact(5));

Вывод:

120

Рекурсия против итерации:

Here is some difference between recursion and iterative:

8. Что такое ДОМ?

Ответ: Функция обратного вызова JavaScript.

Ответ: Обратный вызов — это функция, которая передается в качестве аргумента другой функции. Этот метод позволяет функции вызывать другую функцию, а функция обратного вызова может выполняться после завершения другой функции.

Пример:

function greet(name, callback) {
console.log(‘Hi’ + ‘ ‘ + name);
callback();
}
function callMe() {
console.log(‘I am callback function’);
}
greet(‘Rashed’, callMe);

Вывод:

Привет Рашед

Я функция обратного вызова

9. Что такое API, назначение API, GET и POST.

Ответ. API (интерфейс прикладного программирования) — это набор функций, который позволяет приложениям получать доступ к данным и взаимодействовать с внешними программными компонентами, операционными системами или микросервисами.

Цель API — доставить ответ пользователя системе и отправить ответ системы обратно пользователю. Вы нажимаете «добавить в корзину»; API сообщает сайту, что вы добавили товар в корзину; веб-сайт помещает товар в вашу корзину, и ваша корзина обновляется.

GET — Gathers information (provides information)
PUT — Updates data (Updating existing data)
POST — Creates (Creating a new bunch of information)

10. Как понимать это ключевое слово?

Ответ: В JavaScript это ключевое слово относится к объекту, которому оно принадлежит. Он имеет разные значения в зависимости от того, где он используется:

1. In a method, this refers to the owner object.
2. Alone, this refers to the global object.
3. In a function, this refers to the global object.
4. In a function, in strict mode, this is undefined.
5. In an event, this refers to the element that received the event.
6. Methods like call(), and apply() can refer this to any object.