我通过从min
到max
计算的exetrnal函数填充$ scope数组。
我将数组传递给函数(不传递$ scope),并将值添加到传递的数组的引用。这些值已成功添加到$ scope数组中,但我不确定为什么这样可行。任何人都可以澄清吗?
以下是代码:
在控制器中
$scope.Minutes = [];
numbersToScopearray(0, 60, $scope.Minutes);
控制器外
function numbersToScopearray(min, max, scope) {
for (i = 0; i <= 60; i++) {
if (i < 10) { value = "0" + i; } else { value = i; }
scope.push({ 'value': value, 'display': value });
}
}
我添加到scope
的值也会添加到$scope.Minutes
。哪个好,但为什么会这样呢?
答案 0 :(得分:0)
您正在引用对象$ scope.Minutes并将其作为函数的参数提供。所以,当你做一些事情的范围&#39;这是&$ 39; $ scope.Minutes&#39;它修改了内存中指向的数组。 你需要更多解释吗?