[英]assigning the value of function to a variable of same name in javascript
[英]javascript: how to convert a variable to a function with the same name that returns the original value
假设我有一个数字变量(或任何其他类型),我想将此变量转换为具有相同变量名并返回原始值的函数(不使用其他变量)
var x=1
x=()=>x
这将按引用而不是按值复制x,因此新的x将始终返回自身(即函数)而不是原始值
我使用其他变量(temp)达到了结果
var x=1
var temp=x
var x=()=>temp
我想要的是通过值而不是通过引用复制此变量,我知道如何将一个对象复制到另一个对象,但是情况不一样
注意:使用相同的名称对于下一个代码的流程很重要(即:我必须使用一个函数,如果提供了其他类型,则必须将其转换为相同名称的函数)
只需编写一个函数:
function constFunction(temp) {
return () => temp;
}
因此您可以将其称为x = constFunction(x)
。 像每个函数调用或赋值一样,这将复制变量的值,而不是引用。 不,您不能真正避免使用第二个变量(在这种情况下为temp
),因为您不能让x
引用函数和原始值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.