AngularJS API
API 意為 Application Programming Interface(應用程序編程接口)。
AngularJS 全局 API
AngularJS 全局 API 用於執行常見任務的 JavaScript 函數集合,如:
- 比較對象
- 迭代對象
- 轉換對象
全局 API 函數使用 angular 對象進行訪問。
以下列出了一些通用的 API 函數:
API | 描述 |
---|---|
angular.lowercase (<angular1.7) angular.$$lowercase()(angular1.7+) |
轉換字符串為小寫 |
angular.uppercase() (<angular1.7) angular.$$uppercase()(angular1.7+) |
轉換字符串為大寫 |
angular.isString() | 判斷給定的對象是否為字符串,如果是返回 true。 |
angular.isNumber() | 判斷給定的對象是否為數字,如果是返回 true。 |
注意:自 AngularJS 1.7 之後移除 angular.lowercase 和 angular.uppercase 方法, 改為 angular.$$lowercase 和 angular.$$uppercase
angular.lowercase()
實例
<div ng-app="myApp" ng-controller="myCtrl">
<p>{{ x1 }}</p>
<p>{{ x2 }}</p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.x1 = "RUNOOB";
$scope.x2 = angular.$$lowercase($scope.x1);
});
</script>
嚐試一下 »
angular.uppercase()
實例
<div ng-app="myApp" ng-controller="myCtrl">
<p>{{ x1 }}</p>
<p>{{ x2 }}</p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.x1 = "runoob";
$scope.x2 = angular.$$uppercase($scope.x1);
});
</script>
嚐試一下 »
angular.isString()
實例
<div ng-app="myApp" ng-controller="myCtrl">
<p>{{ x1 }}</p>
<p>{{ x2 }}</p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.x1 = "RUNOOB";
$scope.x2 = angular.isString($scope.x1);
});
</script>
<p>{{ x1 }}</p>
<p>{{ x2 }}</p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.x1 = "RUNOOB";
$scope.x2 = angular.isString($scope.x1);
});
</script>
嚐試一下 »
angular.isNumber()
實例
<div ng-app="myApp" ng-controller="myCtrl">
<p>{{ x1 }}</p>
<p>{{ x2 }}</p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.x1 = "RUNOOB";
$scope.x2 = angular.isNumber($scope.x1);
});
</script>
<p>{{ x1 }}</p>
<p>{{ x2 }}</p>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.x1 = "RUNOOB";
$scope.x2 = angular.isNumber($scope.x1);
});
</script>
嚐試一下 »
不愛李雷的韓梅梅
227***1690@qq.com
參考地址
1、定義ng-app以及控製器,在輸入框中填寫值,x1和x2分別接收其大小寫轉換的值,並根據switch來判斷true/false讓其顯示是否是字符串和數字
2、script內容:
嚐試一下 »
不愛李雷的韓梅梅
227***1690@qq.com
參考地址
ECOMA
any***nglingren@sina.com
針對樓上說的angular.isNumber無效問題,解決可以使用如下方法:
嚐試一下 »
ECOMA
any***nglingren@sina.com
runoob
354***2899@qq.com
參考地址
Angular封裝了一係列公共方法,幫助我們更簡單的使用 JS。
1、angular.bind()
angular.bind 類似於 Function.prototype.bind,實現函數柯裏化,返回一個函數代理。eg:
2、angular.bootstrap()
用於使用 angular 執行渲染元素。也是 angular 的啟動方法,如果沒有 在頁麵上指定ng-app,必須要手動調用該函數進行啟動。
3、angular.copy()
Angular.copy 用於複製對象,由於 angular 的雙向綁定特點,那麼如果直接操作 $scope 對象,那麼很容易就會改變 ui 的顯示,這個時候就需要借助 angular.copy 來創建一個對象副本,並進行操作。
4、angular.element()
等價與 jQuery 的選擇器,如果在 angular 之前沒有引入 jQuery,那麼就使用 jqLite 包裝。
5、angular.equals()
用於比較兩個對象是否相等,如下示例的規則和 JS 有區別,注意識別。
6、angular.extend()
功能上和 jQuery.extend 沒多大差異:
7、angular.forEach()
angular.forEach 用於遍曆對象或者數組,類似於 ES5 的 Array.prototype.forEach。
8、angular.fromJson()
angular.fromJson 將 JSON 字符串轉換為 JSON 對象,注意,必須嚴格滿足 JSON 格式,比如屬性必須雙引號,該函數內部實現是利用 JSON.parse()。
9、angular.toJson()
angular.toJson 可以將對象,數組,日期,字符串,數字轉換為 json 字符串
10、angular.identity()
angular.identity 返回該函數參數的第一個值。編寫函數式代碼時,非常有用(待使用)。
11、angular.injector()
angular.injector 能夠創建一個 injector 對象,可以用於檢索 services 以及用於依賴注入。
12、angular.module()
13、angular.isArray()
angular.isArray 用於判斷對象是不是數組,等價於 Array.isArray。
14、angular.isDate()
通過判斷 toString.call(value) 是不是等於 '[object Date]' 來判斷對象是個是一個 Date 對象。
15、angular.isDefined()
判斷對象或者屬性是否定義
16、angular.isElement()
此方法判斷元素是不是一個元素(包含dom元素,或者jquery元素)
17、angular.isFunction()
此方法判斷對象是不是一個 function ,等價於 typeof fn === 'function'
18、angular.isNumber()
判斷是否為數字
19、angular.isObject()
判斷是否為對象
20、angular.isString()
判斷是否為字符串
21、angular.isUndefined()
判斷變量是否未定義
22、angular.lowercase()
轉換字符串為小寫模式,如果參數不是字符串,那麼原樣返回
23、angular.uppercase()
轉換字符串為大寫模式,如果參數不是字符串,那麼原樣返回
24、angular.merge()
將多個對象進行深度複製,與extend()不同,merge將會遞歸進行深度拷貝。該拷貝是完全深拷貝,就連對象引用也不一樣。
25、angular.noop()
一個空函數,調試時非常有用。可以避免 callback 未定義引發的 error。
26、angular.reloadWithDebugInfo()
啟用 DebugInfo,該設置優先級高於 $compileProvider.debugInfoEnabled(false)
runoob
354***2899@qq.com
參考地址
莫雲海
129***0198@qq.com
針對1樓說的angular.isNumber無效問題,解決方法如下:
莫雲海
129***0198@qq.com