javascript - 一段关于 Symbol 的js代码,不太懂请教下。
本文介绍了javascript - 一段关于 Symbol 的js代码,不太懂请教下。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
在阅读别人写的代码的时候,看到多处使用了这样一段代码,不知道是什么意思,有什么作用。向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
};
解决方案
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"
}
这篇关于javascript - 一段关于 Symbol 的js代码,不太懂请教下。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文