javascript - 需要通过 Jasmine 测试的 Javascript 中的向量
问题描述
我最近才开始编码,仍在试图弄清楚一切是如何工作的,我的老师给了我这项工作并教我们如何制作构造函数,但对其他东西一无所知。我想知道是否有人可以帮助我完成 Add 函数,以便它通过测试,然后希望我可以从那里自己推断出其他函数,谢谢:)。
这是规格 在此处输入图像描述
这是当前的代码状态
constructor(pX, pY, pZ) {
this.setX(pX);
this.setY(pY);
this.setZ(pZ);
}
getX() {
return this.mX;
}
setX(pX) {
this.mX = pX;
}
getY() {
return this.mY;
}
setY(pY) {
this.mY = pY;
}
getZ() {
return this.mZ;
}
setZ(pZ) {
this.mZ = pZ;
}
add(vec) {
var mX, mY, pX, pY, x, y;
mX = this.getX();
mY = this.getY();
pX = vec.x;
pY = vec.y;
x = mX + pX;
y = mY + pY;
return new Vector(x, y);
}
这是我必须通过的茉莉花测试。
如果有人能告诉我如何编写 add 函数,希望我可以自己完成剩下的工作。
解决方案
与您的规格完全相同。对于您的 add 方法,这是我写的。
add(pVector) {
return new Vector(this.getX() + pVector.getX(), this.getY() + pVector.getY(), this.getZ() + pVector.getZ())
}
如果您希望能够手动检查变量,则可以使用变量,但对我来说,为了方便起见,我只是将它们省略了。如果您只需将“vec.x”和“vec.y”更改为“vec.getX()”和“vec.getY()”,您可能就可以使用。虽然我自己对这种语言不太熟悉. 所以只是复制了我当前的工作方法。但是你写 getX() 之后的原因是因为你已经有来自 David 给我们的代码的方法,这些方法获取和设置向量的 X 值。所以你只需调用 Vector vec ,然后您将获得 X 值“getX()”。
可能是一个糟糕的解释,但如果你需要更多,请随时将我添加到光盘上,我也在处理这个 atm SEIORI#5498
您几乎可以对所有方法都遵循此公式,只需根据方法更改运算符即可。
推荐阅读
- r - 逻辑回归,如果我们需要查看目标变量中的 0 怎么办?
- swift - 如何在明暗模式之间更改我的应用程序
- python-3.x - 如何使用 discord.py 在欢迎消息中包含公会名称
- java - spark master 无法处理并发作业提交(AWS EMR)
- arrays - 紧急运行时错误索引超出范围 [3],长度为 3
- python - 查找熊猫数据框中两行字符串的差异
- hidden-markov-models - 了解如何计算马尔可夫链中的去除效果
- java - Android (Java) - 布局在边缘被切断
- java - Java 的实现细节在 JDK 中的什么位置?
- python - 按 Pandas 数据分组并保留值