# isObject

# Description

检查 value 是否为 Object 的 language type (opens new window) 。 (例如: arrays, functions, objects, regexes,new Number(0), 以及 new String(''))

# Params

Value

# Return

Boolean

# Code

function isObject(value) {
  const type = typeof value
  return value != null && (type === 'object' || type === 'function')
}

# Analyze

  1. 拿到 valuetypeof
  2. type 不为 null 并且 type 等于 object 或者 function

# Remark

  1. 使用 new 构造的 stringnumberobject 类型, Number 构造函数 MDN (opens new window)String 构造函数 MDN (opens new window)
  2. typeof MDN (opens new window)
  3. ECMA Function (opens new window)

# Example

isObject({}) // => true

isObject([1, 2, 3]) // => true

isObject(Function) // => true

isObject(null) // => false