[英]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.