Чтобы проверить, является ли значение классом в Node.js, вы можете использовать различные методы. Вот несколько примеров:
- Оператор экземпляра:
Операторinstanceofпроверяет, принадлежит ли объект определенному классу. Он возвращаетtrue, если объект является экземпляром класса, иfalseв противном случае. Вот пример:
class MyClass {}
const obj = new MyClass();
console.log(obj instanceof MyClass); // true
console.log(obj instanceof Object); // true
console.log(obj instanceof Array); // false
- Object.prototype.toString():
МетодObject.prototype.toString()возвращает строковое представление типа объекта. Вы можете использовать его, чтобы проверить, является ли объект экземпляром определенного класса. Вот пример:
class MyClass {}
const obj = new MyClass();
console.log(Object.prototype.toString.call(obj) === '[object MyClass]'); // true
console.log(Object.prototype.toString.call(obj) === '[object Object]'); // true
console.log(Object.prototype.toString.call(obj) === '[object Array]'); // false
Оператор
- typeof:
Операторtypeofвозвращает строку, указывающую тип операнда. Хотя он не может напрямую проверить, является ли значение классом, вы можете использовать его, чтобы проверить, является ли значение объектом, а затем дополнительно проверить его класс. Вот пример:
class MyClass {}
const obj = new MyClass();
console.log(typeof obj === 'object'); // true
if (typeof obj === 'object' && obj !== null) {
console.log(obj.constructor.name === 'MyClass'); // true
}
Это всего лишь несколько методов проверки того, является ли значение классом в Node.js. В зависимости от вашего конкретного случая использования вы можете найти один метод более подходящим, чем другие. Не стесняйтесь выбирать тот, который лучше всего соответствует вашим потребностям.