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后面的那个字符串标识对象类型

相关推荐
速易达网络27 分钟前
RuoYi、Vue CLI 和 uni-app 结合构建跨端全家桶方案
javascript·vue.js·低代码
耶啵奶膘33 分钟前
uniapp+firstUI——上传视频组件fui-upload-video
前端·javascript·uni-app
JoJo_Way35 分钟前
LeetCode三数之和-js题解
javascript·算法·leetcode
视频砖家1 小时前
移动端Html5播放器按钮变小的问题解决方法
前端·javascript·viewport功能
lyj1689972 小时前
vue-i18n+vscode+vue 多语言使用
前端·vue.js·vscode
小白变怪兽3 小时前
一、react18+项目初始化(vite)
前端·react.js
ai小鬼头3 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github
墨菲安全4 小时前
NPM组件 betsson 等窃取主机敏感信息
前端·npm·node.js·软件供应链安全·主机信息窃取·npm组件投毒
GISer_Jing4 小时前
Monorepo+Pnpm+Turborepo
前端·javascript·ecmascript