Javascript 在模板中的多个位置使用函数的返回值

Javascript 在模板中的多个位置使用函数的返回值,javascript,angularjs,Javascript,Angularjs,如果我有一个返回对象的函数。例如 $scope.getPoint = function() { //some calculation logic goes here return {x:1,y:2}; } 我想在模板中显示它的属性: <b>som html</b> x: {{getPoint().x}} y:{{getPoint().y}} som html x:{{getPoint().x}}y:{{{getPoint().y} 这将导致对该函数的

如果我有一个返回对象的函数。例如

$scope.getPoint = function()
{
    //some calculation logic goes here
    return {x:1,y:2};
}
我想在模板中显示它的属性:

<b>som html</b> x: {{getPoint().x}} y:{{getPoint().y}}
som html x:{{getPoint().x}}y:{{{getPoint().y}
这将导致对该函数的两次调用。 (我知道,无论如何,我可能会称之为无数次)


有没有办法在模板中重复使用相同的返回值?

只要值不会改变,为什么不将其设置为自调用函数

$scope.myVar = (function () {
    return { x: 1, y: 2 };
}());
比如:

<b>som html</b> <span ng-repeat="(key, value) in getPoint()">{{key}}: {{value}}</span>
somhtml{{key}}:{{{value}
至少根据法律,这应该是可行的


编辑:事实上是这样的:

只要不涉及http ajax请求,您为什么会在意呢+1.在绑定到页面之前,是否可以运行函数并将其结果设置为模型中的变量?PS-我不使用角度,所以可能是不正确的。它说:“这里有一些计算逻辑。”我想问题是,计算所依赖的变量会改变吗?目前,代码没有监视任何其他变量。问题是缓存一个值,这样即使函数可能在模板中的多个点中呈现,也可以运行一次。