Оператор typeof - определение типа данных на JavaScript

Оператор typeof позволяет определить тип параметра (число, строка, объект). Оператор возвращает строку, содержащую тип ('number', 'string', 'object').

Для null оператор возвращает 'object' (это признанная ошибка языка). Для функций оператор возвращает 'function'. Это сделано для удобства, так как типа 'function' не существует.

Синтаксис

У оператора typeof есть 2 синтаксиса (оба синтаксиса работают одинаково):

typeof параметр; typeof(параметр);

Пример

Давайте посмотрим, как typeof работает с числом:

typeof 1;

В результате выполненного кода мы получим значение number:

'number'

Пример

Теперь давайте зададим в параметре строку:

typeof 'str';

Результат выполнения кода:

'string'

Пример

Теперь укажем в параметре булевое значение true:

typeof true;

Результат выполнения кода:

'boolean'

Пример

Давайте посмотрим какой тип у значения undefined:

typeof undefined;

После выполнения кода мы получим также undefined:

'undefined'

Пример

Теперь давайте узнаем тип пустого объекта:

typeof {};

Результат выполнения кода:

'object'

Пример

А теперь узнаем тип пустого массива:

typeof [];

В результате также получим 'object':

'object'

Пример

Давайте узнаем тип значения null:

typeof null;

В результате также получим 'object', что является признанной ошибкой языка:

'object'

Пример

Теперь определим тип пустой функции:

typeof function() {};

После выполнения кода мы получим 'function', несмотря на то, что такого типа не существует. Данная строка нужна для удобства пользователя при определении функции:

'function'

Пример

Напишем функцию, которая будет выводить только числа:

function printNumber(number) { if (typeof number === 'number') { console.log(number); } } printNumber(2); printNumber('str'); printNumber(3);

Смотрите также

  • функцию isNaN,
    которая осуществляет проверку на NaN
  • функцию isFinite,
    которая проверяет число на конечность



Чат с GPT Компилятор