javascript - 使用扩展运算符的 AssertionError
问题描述
尝试使用扩展运算符编写函数以将元素添加到数组中。下面是我编写的代码,它不断返回 AssertionError: expected [ Array(5) ] to deep equal [ 'foo', 1 ]
var chocolateBars = ["snickers", "hundred grand", "kitkat", "skittles"];
function addElementToBeginningOfArray(candyBars,twix) {
return ["twix", ...chocolateBars];
}
解决方案
我认为您的代码中有错字?我假设您的意思是这样做:
var chocolateBars = ["snickers", "hundred grand", "kitkat", "skittles"];
function addElementToBeginningOfArray(candyBars,twix) {
return ["twix", ...candyBars];
}
console.log(addElementToBeginningOfArray(chocolateBars);
编辑:它打印出来:(5)[“twix”,“snickers”,“hundred grand”,“kitkat”,“skittles”]
这是你期望看到的吗?
编辑:与提问的人犯了同样的错字。更正了这一行:
return ["twix", ...candyBars];
事实上,因为我的回答被选错了,所以让我更详细地说明这一点并提供帮助。代码确实不会像主题所有者看到的那样抛出错误,因为变量 ChocolateBars 具有全局范围。它会起作用的。在我看来,错误或多或少似乎他/她正在运行单元测试,但不知何故只期望数组中的一个元素,但实际上他们有五个?这就是该代码的工作方式。ChocolateBars 中应该有 5 个元素。所以可能修复错字可以解决他/她的问题,因为他不小心改变了巧克力棒
推荐阅读
- git - 与 npm 等包管理器相比,使用 git 子模块的主要优势是什么?
- javascript - 有没有办法让 Electron 主进程脚本使用 `postMessage` 函数监听页面发布的消息?
- linkedin - 如何使用 LinkedIn API 获取公司洞察
- python - 展开列表字典以获取列表中每个值的键排列
- c++ - 将旧库与新模块系统一起使用
- javascript - 在 ReactJS 中传递 Props
- python - 我无法将从套接字接收的数据更改为整数。我收到此错误“invalidlateral for int () with base 10”
- html - 在文件类型输入的接受属性中传递 .png 和 image/png 有什么区别?
- php - Laravel 中的条件格式
- c# - 什么时候在 Unity 中将非静态 GameObject 方法和属性与 gameObject 放在一起?