The lodash method isElement exported as a module for detecting DOM elements in JavaScript.
npx @tessl/cli install tessl/npm-lodash--iselement@4.1.0The lodash method isElement exported as a standalone module for detecting DOM elements in JavaScript. This utility function provides reliable DOM element detection with comprehensive type checking and legacy browser compatibility.
npm install lodash.iselementconst isElement = require('lodash.iselement');const isElement = require('lodash.iselement');
// Check DOM elements
isElement(document.body);
// => true
isElement(document.createElement('div'));
// => true
// Check non-DOM values
isElement('<body>');
// => false
isElement({ nodeType: 1 });
// => false (plain object, not a DOM element)
isElement(null);
// => false
isElement([1, 2, 3]);
// => falseChecks if a value is likely a DOM element by verifying it has the correct nodeType, is object-like, and is not a plain object.
/**
* Checks if `value` is likely a DOM element.
*
* @static
* @memberOf _
* @since 0.1.0
* @category Lang
* @param {*} value The value to check.
* @returns {boolean} Returns `true` if `value` is a DOM element, else `false`.
* @example
*
* _.isElement(document.body);
* // => true
*
* _.isElement('<body>');
* // => false
*/
function isElement(value);Implementation Details:
The function performs the following checks:
value.nodeType === 1 (Element node type)Browser Compatibility:
Usage Examples:
const isElement = require('lodash.iselement');
// DOM elements
console.log(isElement(document.body)); // => true
console.log(isElement(document.createElement('span'))); // => true
console.log(isElement(document.documentElement)); // => true
// Non-DOM elements
console.log(isElement(document)); // => false (Document node, not Element)
console.log(isElement(document.createTextNode('text'))); // => false (Text node)
console.log(isElement(document.createComment('comment'))); // => false (Comment node)
// Plain objects and other values
console.log(isElement({})); // => false
console.log(isElement({ nodeType: 1 })); // => false (plain object)
console.log(isElement('string')); // => false
console.log(isElement(123)); // => false
console.log(isElement([])); // => false
console.log(isElement(null)); // => false
console.log(isElement(undefined)); // => falseError Handling:
The function never throws errors and gracefully handles all input types: