JS: Test is Object Type 🚀

By Xah Lee. Date: . Last updated: .
/* xah_is_obj(x) return true if x is object type.
version 2023-01-17
 */
const xah_is_obj = ((x) => {
  const yy = typeof x;
  return (x !== null) && (yy === "object" || yy === "function");
});

// ssss---------------------------------------------------
// test

console.log(
  [
    {},
    [],
    /./,
    new Date(),
    function f() {},
    (x) => 3,
    new Set(),
    new Map(),
    new WeakMap(),
    new WeakSet(),
    function* () {},
    (function* () {})(),
    JSON,
    Math,
    Error(),
    new Promise(() => {}),
  ].every(xah_is_obj),
);

console.log(
  [null, 3, 1, Infinity, NaN, "", true, undefined, Symbol()].every((x) =>
    xah_is_obj(x) === false
  ),
);

JavaScript, Value Types

JavaScript, Object and Inheritance

BUY ΣJS JavaScript in Depth