Три крутих фішки в JavaScript

  • 2 марта, 17:10
  • 3559
  • 0

Три крутих фішки в JavaScript:

#1. Визначення того, є змінна примітивним або не примітивним типом даних

В Javascript є примітивні і не примітивні типи даних. Примітивні типи це: булевий тип (boolean), рядки (string), числа (number), BigInt, null, Symbol і undefined. Не примітивний тип включає в себе тільки об'єкти (Objects).

Найчастіше нам треба визначити який тип значення зберігається в змінній - примітивний або не примітивний?

Створимо для прикладу змінну val:

var val; // змінна містить примітивне або не примітивне значення

Визначити який тип значення зберігається в змінній можна за допомогою всього декількох рядків коду:

function isPrimitive ( val ) { 
    return Object ( val ) ! == val;
}

Ми використовуємо конструктор об'єктів щоб створити об'єкт-обгортку для значення змінної.

  1. Якщо значення змінної відноситься до примітивного типу даних, то конструктор об'єктів створить новий об'єкт-обгортку для цього значення.
  2. Якщо значення не є примітивним типом даних, то це може бути тільки об'єкт і конструктор об'єктів поверне його.

Отже, сувора перевірка (! == або ===) може допомогти нам перевірити яким типом є значення змінної, примітивним або не примітивним.

#2. Створення чистого об'єкта на javascript

Перед створенням чистого об'єкта, давайте розберемося  «Що ж таке чистий об'єкт?». Чистий об'єкт в Javascript - це об'єкт який не містить в своєму прототипі ніяких функцій.

Звичайний об'єкт створюється з наступним синтаксисом:

var obj = { } ;

Після перевірки obj .__ proto__ ми отримуємо багато функцій, що містяться всередині нього:

Три крутих фішки в JavaScript

А що якщо ми хочемо створити об'єкт, який не має в собі жодної функції-прототипу?

Ми можемо зробити це використовуючи метод create для конструктора об'єктів.

var obj = Object. create ( null ) ;

Після перевірки прототипу об'єкта ми отримуємо наступний результат:

Три крутих фішки в JavaScript

Об'єкт без прототипів, отже ми створили чистий об'єкт.

#3. Видалення дублікатів з масиву

Розглянемо наступний масив:

var arr = [ 1 , 2 , 3 , 3 , 4 , 5 , 6 , 6 , 7 , 7 , 7 , 7 ] ;

Як ви помітили в ньому безліч елементів, що дублюються. Щоб видалити дублікати елементів, ми можемо використовувати  Set .

Об'єкти Set дозволяють вам зберігати унікальні значення будь-якого типу, як примітиви, так і інші типи об'єктів. У Set не може бути повторюваного значення. Почитати про це більше можна на  MDN Web Docs .

Для видалення дублікатів з масиву, ми напишемо ось такий код:

const newArr = [ ... new Set ( arr ) ] ;

Ми створили новий Set , що містить в собі тільки унікальні значення масиву, потім розмістили їх усередині нового масиву. Символ «...» - це спред-оператор. 

В результаті ми отримали масив, що містить в собі тільки унікальні значення.

Джерело перекладу


0 комментариев
Сортировка:
Добавить комментарий

IT Новости

Смотреть все