发布于

lodash.isSymbol 源码解析

作者
  • avatar
    姓名
    Jacob
    Twitter

解析

function isSymbol(value) {
  const type = typeof value
  return (
    type === 'symbol' || (type === 'object' && value != null && getTag(value) === '[object Symbol]')
  )
}

此方法调用了 lodash 中另外一个封装的方法:

  • getTag:返回 object 类型 value 的 toString 值

文档

_.isSymbol(value)

检查 value 是否是原始 Symbol 或者对象。

添加版本

4.0.0

参数

value (*): 要检查的值。

返回

(boolean): 如果 value 为一个 symbol,那么返回 true,否则返回 false。

例子

_.isSymbol(Symbol.iterator)
// => true

_.isSymbol('abc')
// => false