gpt4 book ai didi

javascript - Jasmine 是否支持带有 =>(箭头)的 javascript

转载 作者:行者123 更新时间:2023-11-30 09:21:13 24 4
gpt4 key购买 nike

Jasmine 似乎不支持 =>(如果我自己的发现是正确的话)。

这是我的 logic.js 文件中的一个片段

var myObj = new function(){
this.getSomething = function(input){
_myLocalArray.forEach(item =>{
//left blank
});
};
};

我的测试是

/// <reference path="../../Ui/Content/Javascript/logic.js"/>
/// <reference path="jasmine.js" />

describe("My Tests", function () {

it("Description etc", function () {
var result = myObj.getSomething("some input"); // FAILS HERE
expect(result.length).toBe(0);
});
...

它失败了

JavaScript critical error at line 61, column 37 in file:///d:/github/Ui/Content/Javascript/logic.js\n\nSCRIPT1002: Syntax error

第 61 行在上面的 th3e 代码片段中显示为//FAILS HERE

然后在 Jasmine 中抛出异常

myObj is undefined

如果我在逻辑中注释掉代码(我使用 => 的地方),那么代码会执行而不会出现这些错误

我做错了什么?不支持 => 吗?我在文档中找不到任何东西来证实这一点。

编辑

我没有使用 nodeJs。我正在使用 vanilla javascript、visual studio 2017、Jasmine 和 Chutzpah。

最佳答案

这很重要:

I'm using vanilla javascript, visual studio 2017, Jasmine and Chutzpah.

首先,没有vanilla javascript!或者至少,节点并不意味着您不使用 vanilla javascriptvanilla javascript唯一含义是您不使用任何框架/库。然而,您总是需要一些东西来执行您的 javascript。浏览器或其他类似 node 的东西。但是还有其他选项,例如 NashornGraalVMDuktape

Jasmine 是一个用 Javascript 编写的库。所以 Jasmine 与支持的 Javascript 特性无关。然而 Chutzpah 有。那么 Chutzpah 如何执行您的 javascript?嗯,readme回答这个问题:

Chutzpah supports the QUnit, Jasmine and Mocha testing frameworks. Chutzpah uses the PhantomJS headless browser to run your tests.

这是您的答案:Phantomjs does not support arrow functions!

实际上 phantomjs is dead应该被 Chrome Headless 之类的东西取代。此外,Chutzpah 上的事件看起来也不是很有希望。因此,我只能建议您暂时远离 Chutzpah,并使用在引擎盖下使用 Chrome Headless 的东西。

关于javascript - Jasmine 是否支持带有 =>(箭头)的 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51502023/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com