问题标签 [es5-compatiblity]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
95 浏览

javascript - 使用 toString 获取函数名有什么风险?

由于 ES5 不支持Function#name. 我正在寻找一种模拟该功能的方法。虽然很多人建议使用Function#toString,但其他人强烈建议不要使用它。

那么使用下面的代码获取函数名有什么风险呢?

由于 ES5 不支持箭头函数,我真的不知道什么时候有风险。

0 投票
0 回答
17 浏览

javascript - 获得与 ES5 的大于号兼容性

我应该如何重构脚本:

与 ES5 兼容?

目前我收到:Unexpected token: operator (>)在'then'代码块内。

0 投票
2 回答
240 浏览

ecmascript-5 - 从 ES5 中的多个模块重新导出

我有 index.js 和以下代码在客户端上运行良好,重新导出在其他三个模块中定义的函数:

但我想在 NodeJS 中使用这些。至少,我们当前的版本似乎不知道这种 ES6 语法。我知道,在定义函数的模块中,如何使用

但是在重新导出模块中使用的相应语法是什么?

0 投票
1 回答
458 浏览

angular - Angular 应用程序的 polyfills,使用从 CLI 创建的 web worker

我有一个应用程序需要在客户端对数据进行大量过滤,这就是为什么必须使用 Web 工作者来保持 UI 流畅的原因。我有一个网络工作者为我的一个过滤器工作,我遇到了 IE 问题,我的打字稿没有为网络工作者编译成 es5。

我已经在网上和堆栈上阅读过,因为网络工作者将在单独的执行上下文中运行,他们将无法访问 Angular 的 polyfill。

我知道我的 web worker 正在 IE11 中运行,因为我可以登录 web worker 上下文并在控制台中看到它。我也收到此错误,这意味着我的 ts 没有转换为正确版本的 js。

工人的错误

我尝试的是手动包含 Mozilla 文档中特定错误的 polyfill,但它不起作用。

如果有人对此有任何见解,将不胜感激:D

这是我的工人的 tsconfig

这是我的角度应用程序的全局 tsconfig 文件

这是我的工人,做了一些过滤

编辑:手动包含 polyfills 后,在 IE11 中我收到此错误: 新错误

错误现在说 worker.ts 而不是 worker.js

0 投票
2 回答
491 浏览

javascript - 无法通过 IE11/es5 的 botframework-webchat 中的自定义存储/调度发送消息

我的客户要求我们的聊天机器人支持 IE11。我不得不修改网络聊天代码以不使用箭头函数等 es6 功能,因为 IE11/es5 不支持它们。在大多数情况下,我是成功的,但我无法开始工作的一件事是发送我正在发送的消息事件。新代码在 Chrome 中有效,但我在 IE11 中收到预期标识符错误消息。以下是相关代码:

以前第一行看起来像

问题来了function({dispatch})。IE 控制台说需要一个标识符并且整个网络聊天无法加载。它在 Chrome 中运行良好。如果我更改function({dispatch})为 just function(dispatch),机器人会呈现,但发送非活动消息到机器人(如下)的调度语句不再在 IEChrome 中起作用。

为什么 IE 无法识别{dispatch}为标识符,我该怎么做才能使其正常工作?

0 投票
1 回答
179 浏览

javascript - 将带有js结果的jsp注入html>body>div

我的问题是:可以在 html 中插入 jsp 响应(html)吗?我认为使用 XmlHttpRequest。

我的问题是:但是如果我的jsp中有javascript在页面加载后执行,它是否像我直接通过浏览器url调用jsp一样执行?

提前致谢

例如:这是 index.html

这是 app.js:

这是 info.html(我有 jsp,但我认为它是相同的..):

这是 info.js:

如果我调用 info.html,在浏览器中输入 url(例如http://localhost:8000/info.html),脚本被执行并且我得到“info.js 被执行”,而不是如果我调用 index.html,也许xhr 请求返回不一样,但我看到“这是信息”。

我如何使用 xhr 解决和完成这个问题?

谢谢
罗伯托

0 投票
3 回答
134 浏览

javascript - 将 => () => 转换为 ES5

由于依赖于执行脚本的系统,我正在将一些脚本从 ES6 转换为 ES5。我遇到了这个特定命令的问题:

我不确定他们试图用 '=> () =>' 语法来完成什么,并且不确定如何将其转换为 ES5 标准函数。任何帮助是极大的赞赏。

0 投票
3 回答
52 浏览

javascript - 在对象数组上使用 map() 时出现奇怪的输出,我该如何解决?

我正在从对象数组中过滤空值,但接收到的不是干净的数组作为输出

所以我的目标是在对象数组中获取空​​值并获取它们的键。我在这里做错了什么以及如何解决它以使所有输入都正确返回?

0 投票
1 回答
41 浏览

javascript - 使用 .prototype 向类添加方法

我正在尝试定义一个名为“User”的类......然后在代码中我试图通过写入“prototype”来向该类添加一个方法。我不确定我的术语在这里是否正确......虽然我希望所有未来的“用户”实例都可以使用“who_auto”方法......

在 JSFiddle 中试用此代码...给了我错误消息:“未捕获的 TypeError:pp.who_auto 不是函数”

这是我的代码:

0 投票
0 回答
90 浏览

javascript - 如何在使用 Yarn 2 的包中查找 ES5 兼容性问题?(类似于 are-you-es5)

不久前,我偶然发现了一个名为are-you-es5 https://www.npmjs.com/package/are-you-es5的漂亮 NPM 包

这有助于检查是否node_modules是 ES5,并告诉您需要更改哪些以便在旧浏览器中加载您的网站。

如今,我正在使用 Yarn 2(与带有 PnP 的 Yarn 1 相同),但这(似乎)不起作用。

注意:我也尝试过 es-check ( https://www.npmjs.com/package/es-check ) 但这是相当个人化的,并不是检查整个项目的真正选项,尤其是当您没有使用它时开始。

如何在导入的包中仅使用 1 个命令来查找 ES5 兼容性问题?

堆:

  • 反应
  • 纱线2
  • 打字稿
  • 网页包
  • 通天塔