При работе со сложными кодами в JavaScript часто возникает неоднозначность в понимании разницы между встроенной функцией и обычной функцией. Например, проверка переменной, созданной во время выполнения и назначенной функции. В таких случаях проверка того, относится ли переменная к типу функции с помощью JavaScript, помогает правильно определить и отсортировать данные.
В этом блоге будут продемонстрированы подходы к проверке того, относится ли переменная к типу функции в JavaScript.
Как проверить, имеет ли переменная функциональный тип в JavaScript?
Чтобы проверить/убедиться, что переменная имеет тип функции в JavaScript, можно использовать следующие подходы:
- Оператор «типа».
- оператор «экземпляр».
- Метод «object.prototype.tostring.call()».
Давайте рассмотрим каждый из подходов один за другим!
Подход 1: проверьте, имеет ли переменная тип функции в JavaScript, используя оператор typeOf
“ тип ” извлекает тип данных переменной. Этот оператор можно использовать в сочетании с оператором строгого равенства (===), чтобы применить проверку конкретной переменной для ее типа.
Пример
Давайте проверим следующий пример:
< тип сценария знак равно 'текст/javascript' >функция умножать ( а , б ) {
возвращаться а * б ;
}
если ( тип умножать === 'функция' ) {
приставка. журнал ( 'Переменная имеет функциональный тип' ) ;
}
еще {
приставка. журнал ( «Переменная не имеет функционального типа» ) ;
}
сценарий >
Давайте выполним следующие шаги, как указано в приведенном выше коде:
- Объявите функцию с именем « умножить() ”, имеющий заявленные параметры умножения двух чисел.
- В его определении умножить указанные числа, переданные в качестве параметров функции.
- После этого примените « тип » с помощью строгого оператора равенства, чтобы проверить, является ли тип указанной переменной « функция ».
- В результате соответствующее сообщение будет отображаться при удовлетворении или неудовлетворении условия соответственно.
Выход
В приведенном выше выводе можно заметить, что переменная « умножать ” имеет функциональный тип.
Подход 2: проверьте, имеет ли переменная тип функции в JavaScript, используя оператор instanceof
“ случай ” используется для проверки типа конкретной функции, переменной и т. д. во время выполнения. Этот оператор можно использовать для проверки переданного параметра на его тип, указав соответствующий тип и применив к нему проверку.
Синтаксис
Имя случай ТипВ приведенном выше синтаксисе:
- “ Имя ” относится к имени переменной/функции.
- “ Тип ” соответствует типу переменной/функции, т. е. строка и т. д.
Пример
Приведенный ниже пример иллюстрирует изложенную концепцию:
< тип сценария знак равно 'текст/javascript' >пусть sampleFunc знак равно функция ( ) {
}
функция проверка функции ( Икс ) {
если ( Икс случай Функция ) {
тревога ( 'Переменная имеет функциональный тип' ) ;
}
еще {
тревога ( 'Переменная не имеет функционального типа' ) ;
} }
проверка функции ( SampleFunc ) ;
сценарий >
В приведенном выше фрагменте кода:
- Во-первых, определите встроенную функцию с именем « SampleFunc() ».
- После этого объявите еще одну функцию с именем « проверитьФункция() ” имеющий заявленный параметр. В его определении применяется « случай ” оператор в “ если еще ' условие. Здесь, ' Икс ” представляет имя переданного параметра, а “ Функция ” соответственно указывает на его тип.
- Наконец, получите доступ к указанной функции, передав встроенную функцию в качестве ее параметра. В результате отобразится соответствующее сообщение относительно указанного типа в операторе.
Выход
Из приведенного выше вывода видно, что указанная встроенная функция относится к типу « функция ' тип.
Подход 3: проверьте/проверьте, имеет ли переменная функцию типа в JavaScript, используя метод object.prototype.tostring.call()
“ Объект.прототип.toString() ” используется для возврата строки, которая может представлять объект. Этот метод можно применять с помощью метода объекта, чтобы возвращался тип объекта.
Пример
Давайте рассмотрим следующий пример:
< тип сценария знак равно 'текст/javascript' >пусть sampleFunc знак равно функция ( ) { }
функция проверка функции ( Икс ) {
если ( Объект . прототип . нанизывать . вызов ( Икс ) == '[Функция объекта]' ) {
приставка. журнал ( 'Переменная имеет функциональный тип' ) ;
}
еще {
приставка. журнал ( 'Переменная не имеет функционального типа' ) ;
} }
проверка функции ( SampleFunc ) ;
сценарий >
Выполните следующие шаги, как указано в приведенных выше строках кода:
- Аналогичным образом объявите встроенную функцию с именем « SampleFunc() ».
- На следующем шаге определите функцию с именем « проверитьФункция() ” имеющий заявленный параметр.
- В его определении применяется « Object.prototype.toString.call() », ссылаясь на параметр функции. “ Функция ” здесь представляет тип конкретной функции, которую необходимо проверить.
- Добавленный « если ” выполняется, если переданный параметр является функцией.
- В другом сценарии « еще условие будет выполнено.
Выход
Приведенный выше вывод указывает на то, что требуемая функциональность достигнута.
Вывод
“ тип », оператор « случай », или « объект.прототип.tostring.call() ” может проверить/подтвердить, имеет ли переменная тип функции в JavaScript. Оператор typeOf можно комбинировать с оператором строгого равенства для проверки типа переменной. Экземпляр оператора проверяет переданную переменную, указывая ее соответствующий тип и применяя к ней проверку. Метод object.prototype.tostring.call() возвращает тип объекта. Эта статья предоставила методы для проверки того, является ли переменная типом функции, используя JavaScript.