【问题标题】:JavaScript: class that returns null [duplicate]JavaScript:返回 null 的类 [重复]
【发布时间】:2020-11-20 16:32:12
【问题描述】:

我正在编写一个使用 AudioContext 的 React 应用程序。有时在某些版本的 Safari 上,使用 AudioContext(或 window.AudioContext || window.webkitAudioContext;)调用 new 会返回 null。

我已经编写了防止这种情况的代码。我想知道是否有办法模仿这种行为?我想创建一个单元测试,在其中我模拟 window.AudioContext 成为一个类,当使用 new 调用时返回 null。

你怎样才能实现这样的目标:

const context = new FakeAudioContext();

将context 设置为null?

【问题讨论】:

  • 我认为这是不可能的,除非您可以更改调用的语法以删除 new(或者可以接受不是 null 的无效值)
  • @Amy 谢谢,我看到了!不,不是的。那里描述的解决方案不起作用。
  • @J.Hesters 那是因为你做不到,那里的答案是你能做的最好的。

标签: javascript class null audiocontext


【解决方案1】:

为了您的单元测试,您可以简单地这样做 window.AudioContext = null;

这样你就可以模拟它为空时的行为

【讨论】:

  • 不幸的是,没有,因为代码调用 new window.AudioContext() 不同,因为它不返回 null 但它崩溃说 null 不是构造函数。
猜你喜欢
  • 2019-06-24
  • 2018-12-25
  • 2018-11-29
  • 2019-10-04
  • 2011-11-01
  • 2017-05-09
  • 2012-02-01
  • 2015-09-11
  • 2011-11-09
相关资源
最近更新 更多