Що таке "це" ключове слово в JavaScript?
Оскільки ми знаємо, що Об'єкти є основними будівельними блоками в JavaScript, спеціальний об'єкт також називається "цей" об'єкт, а значення "це" можна побачити в кожному рядку виконання JavaScript, який знову визначається на основі того, яким є код виконується. У цій темі ми дізнаємось про "це" ключове слово в JavaScript.
Важливість "цього" ключового слова в JavaScript
- Об'єкт 'цей' у JavaScript має багато важливих ролей та застосувань. В основному використовується для вказівки на примірник об'єкта з його власного методу чи конструктора. Поряд із вказівкою, "це" також може використовуватися для відстеження виконання контексту, що базується на тому, де функція викликається.
- Наступне, що стосується функції "це" в JavaScript - це те, що посилання на контекст виконання може змінюватися. І, нарешті, посилання на контекст виконання також може бути встановлено, коли він посилається функцією зворотного виклику, навіть якщо функція визначена всередині об'єкта конструктора.
Навіщо використовувати ключове слово "це" в JavaScript?
- У JavaScript ключове слово "це" використовується у багатьох контекстах для найкращого використання контекстів. В основному ключове слово "це" використовується для позначення якогось об'єкта або функції в JavaScript. Щодо самого слова (цього), ми можемо зрозуміти, що воно стосується чогось. Щоб зрозуміти «це» краще на практичному шляху, ми можемо розглянути приклад, коли містер X грав у крикет, і він виграв гру.
- Отже, тут, замість того, щоб знову використовувати містера X, ми використовували "він", який стосується лише містера X. Це допомагає нам не згадувати одне і те ж і знову і знову. Точно так само і в JavaScript ми можемо використовувати функцію "об'єкт" або об'єкт для позначення якоїсь іншої функції або об'єкта зі значенням, що викликає цю функцію або об'єкт. Зазвичай "це" використовується всередині функції або методу, але воно може бути використане і поза функцією (в глобальному масштабі).
Як використовувати ключове слово "це"?
- Як ми знаємо, що JavaScript - це сценарій мови, тому немає необхідності в компіляції кодів, він виконується під час виконання. Він може бути виконаний безпосередньо Перекладачем, рядок за рядком. А середовище або область, у якій виконуються коди JavaScript, називається "Контекст виконання".
- Виконання JavaScript підтримує стек контекстів виконання, і він підтримує поточний стек зверху. Об'єкт, на який посилається "це", змінюється щоразу, коли змінено контекст виконання.
- Просто можна припустити, що коли функція створюється одночасно, також створюється ключове слово "це" (поза сценою), яке посилається на об'єкт, де функціонує функція. Ключове слово "це" працює по-різному в JavaScript від інших мов програмування.
Він має різні значення залежно від того, де ми його використовуємо, наприклад:
- "це" позначає об'єкт власника у методі.
- "це" відноситься до глобального об'єкта в єдиній ситуації.
- "це" також відноситься до глобальних об'єктів у простій функції.
- "це" означає елемент у події, яка приймає подію.
- "це" не визначено у функції суворого режиму.
1. Використовується з полем
Приклад : Нижче "це" стосується об'єкта, який називається людиною. А людина є власником методу fullName.
var employee = (
firstName: “Raju”,
lastName: “Chaudhury”,
id: 123
fullName: function() (
return this.firstName + “ ” + this.lastName;
)
)
Короткий приклад для форми форми:
check to alert this object name
Введіть ім’я та перевірте нижченаведений параметр радіо для сповіщення про вхід
Позначте це, щоб ввести текстове поле введення
Зверніть увагу на підписку обробника події під час відкриття форми, щоб побачити дії, вжиті, коли натиснути кнопку "Подати"
2. Використовується для виклику конструктора
Зазвичай, коли ми використовуємо ключове слово "new" для створення примірника для об'єкта функції, тоді ми використовуємо функцію як конструктор.
У наведеному нижче прикладі ми оголошуємо функцію Bike, а потім викликаємо її як конструктор:
function Bike(name)(
this.name = name;
)
Bike.prototype.getName = function()(
return this.name;
)
var bike = new Bike('Pulsar');
console.log(bike.getName());
У наведеному вище прикладі новий Bike ("Pulsar") є конструктором функції Bike. Тут JavaScript створює новий об’єкт і ставить ключове слово "це" новоствореному об'єкту. Отже, тепер ми можемо викликати Bike () як функцію або як конструктор. Тут, якщо ми видалимо "нове" ключове слово, воно відобразить помилку, як показано нижче:
var bajaj = Bike('Bajaj');
console.log(bajaj.name);
/ * Він відображатиметься як TypeError: Неможливо прочитати властивість 'name' undefined * /
Це тому, що ця функція в Bike () ставиться до глобального об'єкта, результати bajaj.name не визначені.
Щоб функція Bike () завжди викликалася за допомогою конструктора, ми перевіряємо при запуску Bike () функції, як показано нижче:
function Bike(name)(
if( ! (this instanceof Bike)(
throw Error(“We should use new operator to call a function”);
)
this.name = name;
)
Існує метавластивість, відома як "new.target", яка дозволяє виявити, чи функція викликається простою викликом або конструктором.
Тут ми можемо редагувати функцію Bike (), яка використовує метавластивість new.target, як показано нижче
function Bike(name)(
if( ! new.target)(
throw Error(“We should use new operator to call a function”);
)
this.name = name;
)
3. Використовується для повернення поточного екземпляра класу
Вираз класу - це також спосіб визначення класу в JavaScript. Його також можна назвати або без імені. Названий є локальним для його класу, і його можна отримати за властивостями класу.
/ * приклад для неназваного виразу класу * /
let Mobile = class (
constructor(cost, weight)(
this.cost = cost;
this.weight = weight;
)
);
console.log(Mobile.name); //Output: Mobile
/ * приклад для названого виразу класу * /
let Mobile = class Mobile2(
constructor(cost, weight)(
this.cost = cost;
this.weight = weight;
)
);
console.log(Mobile.name);
Вихід: Mobile2
4. Використовується як параметр методу
Коли ми називаємо метод об'єкта, JavaScript ставить "це" об'єкту, якому належить метод.
Приклад:
var Bike = (
name: 'Pulsar',
getName: function()(
return this.name;
)
)
console.log(bike.getName()); /*Pulsar*/
Тут цей внутрішній метод getName () посилається на велосипедний об'єкт.
Висновок
Ключове слово "це" в JavaScript - це потужний інструмент, який зазвичай допомагає розробникам направляти властивості в конкретні контексти, але часом це може бути досить складним і при застосуванні через різні рівні сфери застосування. Значення "цього" також можна встановити явно за допомогою call (), bind () і застосувати () також. Зазвичай значення "цього" визначається контекстом виконання функції. Функції стрілок зазвичай не пов'язують "це", а замість цього "це" пов'язано лексично.
Рекомендовані статті
Це посібник до ключового слова "це" у JavaScript. Тут ми обговорюємо важливість та використання ключового слова "це" у JavaScript разом із прикладом. Ви також можете подивитися наступну статтю.
- Інкапсуляція в JavaScript
- Сортування вставки в JavaScript
- Паліндром у JavaScript
- Компілятори JavaScript
- це ключове слово у java | Приклади цього ключового слова
- Правила instanceOf в Java з прикладом