AngularJS $interval Service

The AngularJS $interval service is similar to JavaScript's window.setInterval function. In angular it is refer to it through the $interval service. The $interval is just wrapper for window.setInterval function so that it will be easy to override, remove or mocked for testing.

The $interval service is executed provided function on every delay milliseconds.

Syntax

$interval(functionName, 1000); 

Example

<!DOCTYPE html>
<html>
<head> <!-- www.techstrikers.com -->
 <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.1/angular.min.js"></script> 
    <meta charset="utf-8">
    <title>AngularJS $interval Example</title>
  <script>
var app = angular.module('app', []);
    app.controller("IntrevalController", function ($scope, $interval) {
      $scope.counter = 0;
      $scope.Counter = function () {
        $scope.counter = $scope.counter + 1;
      }
       $scope.StartCounter = function () {
        $interval($scope.Counter, 1000); 
       }
    });
</script>
</head>
<body style="background-color:#DDE4E9;">
  <fieldset style="background-color:#DDE4E9;">            
    <legend>AngulerJS $interval Service Example</legend> 
  <div ng-app="app">      
    <div ng-controller="IntrevalController">      
        <button ng-click="StartCounter()">Start Counter</button>     
     <p style="font-family:Arial;color:yellow;background:steelblue;padding:3px;width:350px;"
	 >Counter : - {{counter}}</p> 
      
    </div>      
</div>
 </fieldset> 
</body>
</html>
Try Now

Specify Count

The $interval service also allows to specify the count parameter. The specified function executes number of times as count parameter.

Syntax

$interval(increaseCounter, 1000, 10); 

Example

<!DOCTYPE html>
<html>
<head> <!-- www.techstrikers.com -->
 <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.1/angular.min.js"></script> 
    <meta charset="utf-8">
    <title>AngularJS $interval with counter parameter Example</title>
  <script>
var app = angular.module('app', []);
    app.controller("IntrevalController", function ($scope, $interval) {
      $scope.counter = 0;
      $scope.Counter = function () {
        $scope.counter = $scope.counter + 1;
      }
       $scope.StartCounter = function () {
        $interval($scope.Counter, 1000, 10); 
       }
    });
</script>
</head>
<body style="background-color:#DDE4E9;">
  <fieldset style="background-color:#DDE4E9;">            
    <legend>AngulerJS $interval Service with counter parameter Example</legend> 
  <div ng-app="app">      
    <div ng-controller="IntrevalController">      
        <button ng-click="StartCounter()">Start Counter</button>
     <p style="font-family:Arial;color:yellow;background:steelblue;padding:3px;width:350px;"
	 >Counter : - {{counter}}</p> 
      
    </div>      
</div>
 </fieldset> 
</body>
</html>
Try Now

Cancel execution

The $interval service returns a promise which will be notified on each iteration, which can be used to stop or cancel the task by using $interval.cancel(promise) method.

Syntax

var promise = $interval(Counter, 1000);
$interval.cancel(promise); 

Example

<!DOCTYPE html>
<html>
<head> <!-- www.techstrikers.com -->
 <script src="//ajax.googleapis.com/ajax/libs/angularjs/1.3.0-beta.1/angular.min.js"></script> 
    <meta charset="utf-8">
    <title>AngularJS $interval Cancel Example</title>
  <script>
var app = angular.module('app', []);
    app.controller("IntrevalController", function ($scope, $interval) {
      $scope.counter = 0;
      $scope.promise = '';
      $scope.Counter = function () {
        $scope.counter = $scope.counter + 1;
      }
       $scope.StartCounter = function () {
         $scope.promise = $interval($scope.Counter, 1000);
       }
       $scope.CancelCounter = function () {
         $interval.cancel($scope.promise);
         $scope.counter = 0;
       }
    });
</script>
</head>
<body style="background-color:#DDE4E9;">
  <fieldset style="background-color:#DDE4E9;">            
    <legend>AngulerJS $interval Service Cancel Task Example</legend> 
  <div ng-app="app">      
    <div ng-controller="IntrevalController">      
        <button ng-click="StartCounter()">Start Counter</button>  
      <button ng-click="CancelCounter()">Cancel Counter</button>  
      
     <p style="font-family:Arial;color:yellow;background:steelblue;padding:3px;width:350px;"
	 >Counter : - {{counter}}</p> 
      
    </div>      
</div>
 </fieldset> 
</body>
</html>
Try Now

See Also

AngularJS Built-in Filters
AngularJS Built-in Directives
AngularJS Expression
AngularJS Built-in Events
AngularJS Scope Methods
AngularJS Built-in Services
AngularJS Controller Inheritance
AngularJS Custom Directives


 
SHARE THIS IF YOU LIKE!
submit to reddit

SUBSCRIBE FOR LATEST UPDATES
HAVE WE CONNECTED ON FACEBOOK?
TOP TUTORIALSTOP CODE EXAMPLESTOP LIVE DEMOLINKSSTAY CONNECTED
HTML Tutorial
HTML5 Tutorial
Bootstrap3 Tutorial
Javascript Tutorial
TypeScript Tutorial
AngularJS Tutorial
CSharp Tutorial
PHP Tutorial
Developer Tools
Javascript
AngularJS
Google MAP API V3
ASP.NET
Javascript
AngularJS
Google MAP API V3
Contact Us
Advertise with Us
Privacy Policy
Disclaimer
Stay connected. We actually like you. If you want to get up to the minute updates, then connect with us on your fav below.
 
Twitter   Linkedin   Facebook   Google+    RSS   Pinterest
 
Protected by Copyscape Original Content Checker
 
 
Copyright ©2017 www.techstrikers.com Unauthorized reproduction/replication of any part of this site is prohibited.