Наповнення JS розділу

Добридень, Пані та Панове, завдяки вам вдалося зібрати більше 19тис грн з необхідних 15тис на впровадження JS розділу.

JS розділ вже впроваджено - переходимо до його наповнення і почнемо бігти довгий марафон, адже JS має більше 1100 різноманітних методів, властивостей, подій і т.д., які необхідно описати.

Будемо працювати, і вдень, і вночі, щоб орієнтовно взимку закінчити наповнювати JS розділ!

Ви також можете допомогти нам в цьому. Долучайтеся до нашої спільноти в дискорді - ставайте її частиною і допомагайте нашому розвитку.

Також, підтримуйте нас матеріально.

JS властивість Boolean.prototype

Загальний опис

Boolean.prototype - це прототип об'єкта Boolean, який визначає додаткові методи та властивості для булевих об'єктів. Він дає можливість розширювати функціональність всіх булевих об'єктів в JavaScript. Це означає, що ви можете додавати власні методи та властивості до булевих об'єктів, що робить код гнучкішим та легшим для розширення.

Boolean.prototype використовується в основному для додавання додаткової функціональності до булевих об'єктів. Наприклад, якщо ви хочете додати метод, який перевіряє, чи є булеве значення true або false, ви можете зробити це так:

Boolean.prototype.isTrue = function() {
    return this.valueOf() === true;
};

З цим новим методом, ви можете легко перевірити булеві об'єкти:

let myBool = true;
console.log(myBool.isTrue()); // виведе "true"

Важливо розуміти, що коли ви розширюєте Boolean.prototype, ці зміни впливатимуть на всі булеві об'єкти в вашому коді. Тому слід бути обережним при додаванні нової функціональності, щоб уникнути непередбачуваних побічних ефектів. Додатково, важливо не перезаписувати вже існуючі методи чи властивості, що можуть бути в Boolean.prototype.

Порада:

Для початківців важливо усвідомити, що розширення Boolean.prototype може бути спокусливим, але надмірне додавання властивостей чи методів може призвести до плутанини у коді. Переконайтеся, що кожна додана властивість або метод дійсно необхідний та корисний.

// Незрозуміло, чому цей метод є в прототипі булевого типу
Boolean.prototype.printHello = function() {
    console.log("Hello, World!");
};
Порада:

Перед тим як додати новий метод або властивість до Boolean.prototype, переконайтеся, що ви написали відповідні тести. Це допоможе забезпечити стабільність вашого коду та впевненість у його якості.

Порада:

Інші бібліотеки можуть також розширювати Boolean.prototype, тому завжди перевіряйте на наявність конфліктів перед додаванням нових методів чи властивостей.

Синтаксис

Boolean.prototype

Значення

Return

Переглядачі

Переглядач

1

1

1

4

12

Переглядач

4.4

18

4

1

Переглядач

0.10.0

1.0

Приклади


У цьому прикладі ми додаємо новий метод до Boolean.prototype під назвою toYesNo. Цей метод перевіряє поточне булеве значення за допомогою методу valueOf() і повертає "Так", якщо значення true або "Ні", якщо false.

Boolean.prototype.toYesNo = function() {
    return this.valueOf() ? "Так" : "Ні";
}

const myBool = true;
console.log(myBool.toYesNo());  // виведе "Так"

Метод toggle розширює Boolean.prototype, дозволяючи переключати булеве значення на протилежне. У використаному коді, якщо switcher має значення true, виклик методу toggle() змінить його на false і навпаки.

Boolean.prototype.toggle = function() {
    return !this.valueOf();
}

let switcher = true;
switcher = switcher.toggle();
console.log(switcher);  // виведе "false"

Метод isBoolean додається до Boolean.prototype для перевірки, чи є об'єкт екземпляром конструктора Boolean. У JavaScript, коли ви створюєте булеве значення за допомогою літералу (наприклад, true або false), воно не є екземпляром Boolean. Проте, коли ви створюєте булеве значення за допомогою конструктора Boolean, воно є екземпляром Boolean.

Boolean.prototype.isBoolean = function() {
    return this instanceof Boolean;
}

const boolFromLiteral = true;
const boolFromConstructor = new Boolean(true);

console.log(boolFromLiteral.isBoolean());  // виведе "false"
console.log(boolFromConstructor.isBoolean());  // виведе "true"