【发布时间】:2017-03-12 00:56:30
【问题描述】:
我有这个函数来设置画布上立方体的移动(随机),everyVar 是将要使用的变量,a,b,c,d 是 +,-,*,/ 的函数(对不起,如果它混淆了)。有没有办法找到变量的名称而不是它所持有的值?我有“user.s = a(b(c(d(r, 2), e), w), q);”,我需要一种方法将其放入重复函数中,以便变量保持不变,但信息会更新,但如果我将它放在其他地方,它将有不同的变量。我不能只设置另一个变量,如myVariable = q,因为它会保存数字而不是变量本身(例如,我需要它说 user.y 而不是 300)。请让你的答案尽可能简单,因为我是一个初学者,你可能知道。
function setMovement(user){
var everyVar = [user.x, user.y, user.direction, user.distance]
var q = everyVar[Math.floor(Math.random()*everyVar.length)];
var w = everyVar[Math.floor(Math.random()*everyVar.length)];
var e = everyVar[Math.floor(Math.random()*everyVar.length)];
var r = everyVar[Math.floor(Math.random()*everyVar.length)];
user.s = a(b(c(d(r, 2), e), w), q);
a = operators[Math.floor(Math.random()*operators.length)]
b = operators[Math.floor(Math.random()*operators.length)]
c = operators[Math.floor(Math.random()*operators.length)]
d = operators[Math.floor(Math.random()*operators.length)]
}
【问题讨论】:
-
我必须承认,标题中的问题和描述似乎有点脱节。标题问题询问有关获取变量名称的问题 - James 发布了一个很好的链接,展示了如何解决该部分。但是描述似乎你想在 user.s 上放置一个函数,以便在函数外部调用转换,并指向传递给 setMovement 函数的值。如果是这种情况,您可以将 user.s 分配为一个函数,而不是将函数存储在用户对象上的调用,然后随意调用它。
标签: javascript