javascript - 在 IE 以外的其他浏览器上工作的模板文字
问题描述
我正在使用 javascript 并使用“模板文字”,它适用于 Chrome 和 Firefox,但不适用于 Internet Explorer(IE)。
var a = 10;
console.log(`${a}`)
解决方案
模板文字是 ES6,IE 支持的ES6 特性很少。它不支持模板文字。
对于您正在做的事情,只需执行以下操作console.log(a)
:
var a = 10;
console.log(a)
但是如果你的真实代码比这更复杂,你要么必须手动连接,例如:
`foo${somevar}bar${somevar2}baz`
改成
'foo' + somevar + 'bar' + somevar2 + 'baz'
或者,如果你喜欢模板文字的语法而不喜欢纯字符串连接,一个更好的选择是将 Babel 集成到你的构建过程中,以自动将 ES6+ 语法(包括模板文字)转换为 ES5 :
(Babel 不仅会转译模板文字,它还会转译几乎所有较新的语法到 ES5,如解构、箭头函数、async
/await
等 - 对于更大的代码库,这非常重要,允许程序员编写最新的和最好的语言版本,同时保持与 IE 等古老浏览器的兼容性)
推荐阅读
- python - 计算时间序列的每日频率
- python - 突出显示 HTML.div 中的选定文本或 Dash 中的 Dcc.Markdown
- javascript - 如何在 Alpine JS 中对最后一个值进行迭代?
- react-native - React Native / Redux:如何处理状态管理
- javascript - 如何根据 React + Typescript 中的类型将道具传递给孩子
- react-native - 如何管理 FCM 推送令牌的更新?
- c++ - 从同一点绘制两条线时,为什么不从同一点绘制?
- keras-layer - L2 正则化的最佳实践?
- visual-studio-code - 缩放/关注vscode中的区域/文件的一部分?
- python-3.x - 使用 pywebview python 更改应用程序图标