在阅读别人写的代码的时候,看到多处使用了这样一段代码,不知道是什么意思,有什么作用。向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"}
添加回答
举报
0/150
提交
取消