赋值语句周围的圆括号是做什么的?



更多的JavaScript问题。但是我在学习Angular的时候碰到了它!

为什么赋值给$scope。时钟有大括号吗?我把它们拿掉了,没有它们肯定不会产生正确的结果!这种技术在Javascript中叫什么?

function MyController($scope) {
   $scope.clock = {
      now: new Date()
   };
   var updateClock = function() {
      $scope.clock.now = new Date();
   };
   setInterval(function() {
      $scope.$apply(updateClock);
      }, 1000);
   updateClock();
};

在这种情况下,$scope.clock被分配给一个Javascript对象。更准确地说,这被称为"对象文字"表示法。

花括号将时钟变量定义为对象。这意味着如果你可以在这个对象上赋值变量,比如now变量。这样你就可以这样做了。角一边。

var clock = {
  now: new Date()
};
alert(click.now);

这将显示一个带有new Date()结果的警告框。您也可以通过其他方式向对象添加变量。

var clock = {};
clock.now = new Date();

这与上面的内容相同。

在angular中,你所做的就是在$作用域上分配时钟变量。然后给新分配的时钟变量一个now变量。它看起来像这样。

var iAmAnObject = {};
iAmAnObject.clock = {
    now: new Date()
};

最新更新