【问题标题】:Jasmine test fails when run in Chutzpah but not in browserJasmine 测试在 Chutzpah 中运行但在浏览器中运行时失败
【发布时间】:2015-07-15 23:44:34
【问题描述】:

我有一个测试在浏览器中通过,但在 Chutzpah 中失败。

这是失败的部分:

var nameLowerCase = person.PersonName.toLowerCase();
var searchLowerCase= search.toLowerCase();
return (nameLowerCase.includes(searchLowerCase));

楚茨帕说:

消息:TypeError: undefined is not a constructor (evalating 'nameLowerCase.includes(searchLowerCase)') ...

includes 函数似乎有问题,因为如果我删除它,它就会运行。

我可能会尝试用 Regex 或其他东西替换该功能,但试图追踪它是一个巨大的痛苦。如果我遗漏了一些愚蠢的东西,我很乐意向我指出这一点。

【问题讨论】:

    标签: javascript jasmine chutzpah


    【解决方案1】:

    PhantomJS 使用的 JS 引擎还不支持 include 方法。

    【讨论】:

    • 啊,这么简单。我有点考虑过这一点,但后来又忽略了它,因为我只是假设 include 方法将是一个非常典型的事情。
    • 这是 ES6 中的一个新特性。 IE11也不支持。
    【解决方案2】:

    我仍然希望其他人回答这个问题,因为我想知道为什么 .includes 不起作用,但使用 Regex 解决了我的问题:

    var searchPattern= new RegExp(search, 'i');
    return (person.PersonName.match(searchPattern));
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-12-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多