AngularJS hỗ trợ các khái niệm "Seperation of Concerns - Chia để trị" sử dụng cấu trúc service. Service là các hàm JavaScript và có nhiệm vụ trên những task nhất định. Nó làm cho chúng thành những thực thể riêng rẽ dễ dàng trong việc bảo trì và kiểm thử. Controller, filter có thể gọi chúng một cách đơn giản. Service thường được inject sử dụng cơ chế dependency injection của AngularJS.
AngularJS cung cấp rất nhiều những service được định nghĩa cho trước: $http,$scope,$route,$window,$location… Mỗi một service có những nhiệm vụ nhất định. Ví dụ, $http được sử dụng để tạo ra các ajax request lên server để lấy dữ liệu về. $route được sử dụng để định nghĩa thông tin routing... Những service mặc định của AngularJS bắt đầu bởi biểu tượng $.
Có 2 cách để tạo một service là:
- factory
- service
Sử dụng phương thức factory trong AngularJS
Khi sử dụng factory method, đầu tiên chúng ta định nghĩa factory và gắn method cho nó.
var ungdungAngularJS = angular.module("ungdungAngularJS", []); ungdungAngularJS.factory('toanhocService', function() { var factory = {}; factory.phepnhan = function(a, b) { return a * b } return factory; });
Sử dụng phương thức service trong AngularJS
Sử dụng service method, chúng ta sẽ định nghĩa service sau đó gán method với nó. Chúng ta cũng inject những service có sẵn cho nó.
ungdungAngularJS.service('tinhBPService', function(toanhocService){ this.binhphuong = function(a) { return toanhocService.phepnhan(a,a); } });
Ví dụ:
Dưới đây là ví dụ minh họa cho chỉ dẫn bên trên.
testAngularJS.jsp
<html> <head> <title>Vi du Service trong AngularJS</title> <script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script> </head> <body> <h2>Ung dung AngularJS</h2> <div ng-app="ungdungAngularJS" ng-controller="tinhBPController"> <p>Nhap mot so: <input type="number" ng-model="number" /> <button ng-click="binhphuong()">X<sup>2</sup></button> <p>Ket qua: {{ketqua}}</p> </div> <script> var ungdungAngularJS = angular.module("ungdungAngularJS", []); ungdungAngularJS.factory('toanhocService', function() { var factory = {}; factory.phepnhan = function(a, b) { return a * b } return factory; }); ungdungAngularJS.service('tinhBPService', function(toanhocService){ this.binhphuong = function(a) { return toanhocService.phepnhan(a,a); } }); ungdungAngularJS.controller('tinhBPController', function($scope, tinhBPService) { $scope.binhphuong = function() { $scope.ketqua = tinhBPService.binhphuong($scope.number); } }); </script> </body> </html>
Kết quả:
Mở trang textAngularJS.jsp trên trình duyệt web và xem kết quả:

Theo tutorialspoint
Bài trước: Scope trong AngularJS
Bài tiếp: Đa ngôn ngữ (i18n) trong AngularJS
 Học IT
 Học IT  
  
  
  
  
  
 
 AngularJS
 AngularJS  Lập trình
 Lập trình  SQL
 SQL  Python
 Python  Cơ sở dữ liệu
 Cơ sở dữ liệu  Cấu trúc dữ liệu và giải thuật
 Cấu trúc dữ liệu và giải thuật 









 Công nghệ
 Công nghệ  Nền tảng Web
 Nền tảng Web  Microsoft Word 2013
 Microsoft Word 2013  Microsoft Word 2007
 Microsoft Word 2007  Microsoft Excel 2019
 Microsoft Excel 2019  Microsoft Excel 2016
 Microsoft Excel 2016  Microsoft PowerPoint 2019
 Microsoft PowerPoint 2019  Microsoft PowerPoint 2016
 Microsoft PowerPoint 2016  Google Sheets
 Google Sheets  HTML
 HTML  Lập trình Scratch
 Lập trình Scratch  CSS và CSS3
 CSS và CSS3  Lập trình C
 Lập trình C  Lập trình C++
 Lập trình C++  Lập trình C#
 Lập trình C#  Học PHP
 Học PHP  Bootstrap
 Bootstrap  SQL Server
 SQL Server  JavaScript
 JavaScript  Unix/Linux
 Unix/Linux  Khoa học vui
 Khoa học vui  Khám phá khoa học
 Khám phá khoa học  Bí ẩn - Chuyện lạ
 Bí ẩn - Chuyện lạ  Sức khỏe
 Sức khỏe  Vũ trụ
 Vũ trụ  Khám phá thiên nhiên
 Khám phá thiên nhiên  Bảo vệ Môi trường
 Bảo vệ Môi trường  Phát minh Khoa học
 Phát minh Khoa học  Tết 2025
 Tết 2025  Video
 Video  Hướng dẫn
 Hướng dẫn  Công nghệ
 Công nghệ  Khoa học
 Khoa học  Ô tô, Xe máy
 Ô tô, Xe máy  Tổng hợp
 Tổng hợp