是否可以操作两个变量等同于 JavaScript 中的一个常量
can two variables operated equate to a constant in JavaScript?
我需要有两个变量,x和y,以及一个涉及两者的方程,这个方程总是等于1。这是一个简单的例子。这个例子可能很容易用y来定义,比如y = 1/x,但我还有另一个方程需要使用,用y来定义太难了。
var x, y;
x*y = 1;
x = Math.random()*20;
console.log(y);
我会为此收到一条错误消息,例如
Uncaught ReferenceError: Invalid left-hand side in assignment (line 2)
一个变量可以定义为x*y
,就像var z= x*y
一样,但显然不是一个常量。也许有一些方法可以解决这个问题,比如定义两个变量,一个作为常量,另一个作为方程,并找到某种方法来关联它们?也许javascript的松散性会允许一些新技术?
提前感谢! :)
你不能直接这样做。x
的值取决于y
的值。您必须描述它们的依赖关系。
您可以执行以下操作:
var x_y = (function () {
var x = 1, y = 1;
return {
set_x: function (new_x) {
x = new_x;
y = 1 / new_x;
},
set_y: function (new_y) {
y = new_y;
x = 1 / new_y;
},
get_x: function () {
return x;
},
get_y: function () {
return y;
}
};
}());
x_y.set_x(Math.random()*20);
console.log(x_y.get_y());
所以本质上我们说的是x = 1 / y;
和y = 1 / x;
,我们耦合了价值观:如果你改变一个,另一个也会改变。
相关文章:
- Javascript-在哪里放置常量,全局或本地
- JavaScript常量-作为参数传递或直接使用
- 为什么Javascript程序员更喜欢在代码中重复字符串作为常量,而不是使用枚举类型的对象
- 哪些浏览器支持javascript常量
- 未终止的字符串常量JavaScript
- 只使用常量的静态javascript函数会被编译为常量吗
- 何时在 JavaScript 中使用导出默认值和导出常量
- 我可以伪造javascript中的CE-HTML键常量吗?
- imacros提取两部分数据+连接常量保存到文件javascript
- 不能在 Javascript 中的数字常量上调用 toString()
- HTML 元素中的 JavaScript 常量
- HTML 将常量或函数传递给 JavaScript
- JavaScript 常量和对象文字
- Javascript - 在原型上放置一个常量
- Javascript 代码上的未终止字符串常量
- Python:使用嵌入式 Javascript 常量/变量解析 JSON 字符串
- 角度常量与JavaScript常量
- 如何从另一个javascript文件中使用javascript文件中的javascript常量
- 在只有唯一性很重要的情况下,描述性句子可以与JavaScript常量一起使用吗
- JavaScript常量|样式和关键字