- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在学习 Javascript 并在 freecodecamp 学习基础 OOP
.此时,我正在创建一个对象,并试图让该对象返回我希望它返回的内容。
这个项目的完整描述是:
Objects have their own attributes, called properties, and their own functions, called methods.
In the previous challenges, we used the this keyword to reference public properties of the current object.
We can also create private properties and private methods, which aren't accessible from outside the object.
To do this, we create the variable inside the constructor using the var keyword we're familiar with, instead of creating it as a property of this.
This is useful for when we need to store information about an object but we want to control how it is used by outside code.
For example, what if we want to store the speed our car is traveling at but we only want outside code to be able to modify it by accelerating or decelerating, so the speed changes in a controlled way?
In the editor you can see an example of a Car constructor that implements this pattern.
Now try it yourself! Modify the Bike constructor to have a private property called gear and two public methods called getGear and setGear to get and set that value.
现在我明白了它是如何工作的基本概念,我也明白我在做什么,但是我也在使用 node terminal
来尝试自己调试它,我已经得出程序每次都将齿轮加在一起的结论:
> var Bike = function() {
...
... // Only change code below this line.
... var gear = 0;
...
... this.setGear = function(switchGear){
... gear += switchGear;
... };
...
... this.getGear = function() {
... return gear;
... };
... };
undefined
> var myBike = new Bike();
undefined
> myBike.setGear(4);
undefined
> myBike.getGear();
4
> myBike.setGear(4);
undefined
> myBike.getGear();
8
>
有人可以向我解释我在这里做错了什么吗?我不明白为什么要加在一起..谢谢..
来源:
var Bike = function() {
// Only change code below this line.
var gear = 0;
this.setGear = function(switchGear){
gear += switchGear;
};
this.getGear = function() {
return gear;
};
};
var myBike = new Bike();
最佳答案
我想这对软件中的所有错误都是正确的,但它正在这样做因为你告诉它!
gear += switchGear;
你说,把这个值加到齿轮上,它确实做到了。
编辑:OP 的评论使他的困惑更加清晰。
他似乎认为 gear
的值应该以某种方式“重置”,并归零。
不,当 new Bike()
被调用时,函数 Bike 中的步骤只运行一次。变量 gear
持续存在,并且它的值仅在通过方法更改时更改。
关于javascript - 自行车构造器不断添加齿轮而不是输出指定数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36892453/
这个问题更多的是关于在正确的方向上找到一个点。我继承并开发了一个项目来创建汽车选择数据库(匹配用户偏好)。它已经运行得比较好,但可能会更好(存在一些问题),所以我想研究其他人使用的其他一些算法。我正在
我有一个单词列表,例如 [bike, motorbike, copyright]。现在我想检查这个词是否由子词组成,这些子词也是独立的词。这意味着我的算法输出应该类似于:[bike, motor, m
我仍在努力思考前端状态。是否有为资源设置商店的通用最佳实践?例如,我的 web api 有: GET /bikes GET /bikes/:id 我开始时只有一个 BikeStore 和 bikes:
我是一名优秀的程序员,十分优秀!