为了账号安全,请及时绑定邮箱和手机立即绑定

一段关于 Symbol 的js代码,不太懂请教下。

一段关于 Symbol 的js代码,不太懂请教下。

慕勒3428872 2018-09-07 09:09:54
在阅读别人写的代码的时候,看到多处使用了这样一段代码,不知道是什么意思,有什么作用。向js高手请教。var _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(e) {    return typeof e} : function(e) {    return e && "function" == typeof Symbol && e.constructor === Symbol ? "symbol" : typeof e};
查看完整描述

1 回答

?
达令说

TA贡献1821条经验 获得超6个赞

symbol是一个数据类型,可以通过Symbol()来构造。

var sym = Symbol();typeof sym;     // "symbol"

我们现在需要一个方法_typeof,希望它能识别出数据类型,包括symbol。

对于认识sysbol的执行环境,"function" == typeof Symbol && "symbol" == typeof Symbol.iterator结果为true,

_typeof=function(e) {    return typeof e
}

对于不认识sysbol的执行环境:
如果要检测的数据类型不是sysbol:

_typeof=function(e) {    return typeof e
}

否则:
因为 这个应该是sysbol数据类型的数据 是通过Symbol构造的

_typeof=function(e) {   return "symbol"}


查看完整回答
反对 回复 2018-09-30
  • 1 回答
  • 1 关注
  • 2061 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信