存储对具有原始值的变量的引用

时间:2014-02-13 17:57:20

标签: javascript

我想写一个像

这样的签名的函数
broadcast(centerPiece.rotation.y);

存储传递的变量,并在该变量上的所有动画帧上发布值。

问题在于我最感兴趣的是广播原始值,这意味着上面的函数在函数调用时抓住原始值并保持广播固定值。

目前我正在使用此解决方法

broadcast = function(obj,prop){
  doBusinessLogicWith(obj[prop])
}

在我的代码中给我一个相当难看的签名,看起来像

broadcast(centerPiece.rotation,'y');

这当前有效,因为我普遍只需要在对象上广播属性,但是......它有点难看。 我是否有更好的选项来跟踪变量故事原始值?

1 个答案:

答案 0 :(得分:1)

一个稍微不那么丑陋的选项可能是传递对获取当前值的函数的引用。类似的东西:

broadcast = function(getValue){
  var curVal = getValue();
  doBusinessLogicWith(curVal);
}

然后用:

调用它
broadcast(function ()
{
   return centerPiece.rotation.y;
});