Symbol.toStringTag用法

Symbol.toStringTag 作用

对象上的Symbol.toStringTag属性用于对象toString类型标识

Symbol.toStringTag 解释

对象调用toString方法,如果这个属性存在,它的返回值会出现在toString方法返回的字符串之中,表示对象的类型。

webpack中也有使用,用于定义模块导出exports添加Module类型的属性

webpack使用Symbol.toStringTag

js 复制代码
export.toString(export);
function __webpack_require__() {
  // ....
}
__webpack_require__.r = function(exports){
  if (typeof Symbol !== 'undefined' && Symbol.toStringTag) {
    Object.defineProperty(exports, Symbol.toStringTag, {value: 'Module'});
  }
  Object.defineProperty(exports, '__esModule', {value: true});
}
const exports = {};
__webpack_require__.r(exports);
console.log('exports', exports);
// {__esModule: true, Symbol(Symbol.toStringTag): "Module"}

console.log('exports toString', exports.toString());
// [object Module]

总结

Symbol.toStringTag属性可以用来定制toString方法返回[object Object]或[object Array]中object后面的那个字符串标识对象类型

相关推荐
Mike_jia7 小时前
uuWAF:开源Web应用防火墙新标杆——从工业级防护到智能防御实战解析
前端
掘金安东尼7 小时前
Chrome 17 岁了——我们的浏览器简史
前端·javascript·github
袁煦丞7 小时前
群晖NAS FTP远程文件仓库全球访问:cpolar内网穿透实验室第524个成功挑战
前端·程序员·远程工作
前端小巷子7 小时前
JS 打造动态表格
前端·javascript·面试
excel8 小时前
从卷积到全连接:用示例理解 CNN 的分层
前端
UNbuff_08 小时前
HTML 各种事件的使用说明书
前端·html
Mr. Cao code8 小时前
探索OpenResty:高性能Web开发利器
linux·运维·服务器·前端·nginx·ubuntu·openresty
li357416 小时前
将已有 Vue 项目通过 Electron 打包为桌面客户端的完整步骤
前端·vue.js·electron
Icoolkj16 小时前
VuePress 与 VitePress 深度对比:特性、差异与选型指南
前端·javascript·vue.js
excel16 小时前
CNN 分层详解:卷积、池化到全连接的作用与原理
前端