将指定的字符串转换为小写的
angular.lowercase(string);
Param | Type | Details |
---|---|---|
string | string | 字符串转换成小写 |
string | 小写字符串 |
将指定的字符串转换为大写的
angular.uppercase(string);
Param | Type | Details |
---|---|---|
string | string | 字符串转换成大写 |
string | 大写字符串 |
var values = {name: 'misko', gender: 'male'};
var log = [];
angular.forEach(values, function(value, key) {
this.push(key + ': ' + value);
}, log);
expect(log).toEqual(['name: misko', 'gender: male']);
angular.forEach(obj, iterator, [context]);
Param | Type | Details |
---|---|---|
obj | Object Array |
对象遍历
|
iterator | Function |
对象函数
|
context
(optional)
|
Object | 此对象被指定为当天迭代函数的上下文 |
Object Array |
引用obj
|
angular.extend(dst, src);
Param | Type | Details |
---|---|---|
dst | Object | 目标对象 |
src | Object | 源对象 |
Object | 引用dst |
function foo(callback) {
var result = calculateResult();
(callback || angular.noop)(result);
}
angular.noop();
函数返回它的第一个参数,当在功能类型里编写代码时这个函数非常有用。
function transformer(transformationFn, value) {
return (transformationFn || angular.identity)(value);
};
angular.identity();
确定是否引用的是 未定义
angular.isUndefined(value);
//////////////////////////////////////////////////////////////////
var cc = "ddd";
// var cc;
//这样的话就弹出 true
//就是说angular.isUndefined(); 是判断定义了但没有初始化是用的
console.log(angular.isUndefined(cc));
Param | Type | Details |
---|---|---|
value | * | Reference to check. |
boolean | 如果值未定义返回true |
angular.isDefined(value);
Param | Type | Details |
---|---|---|
value | * | Reference to check. |
Boolean | 如果值已定义返回true |
确定是否引用的是 数值型
angular.isNumber(value);
/////////////////////////////////////////////
var cc = "ddd";
var num = 33;
console.log(angular.isNumber(cc)); // false
console.log(angular.isNumber(num)); // true
Param | Type | Details |
---|---|---|
value | * | Reference to check. |
boolean |
如果值是一个数字返回true
|
确定是否引用的是 日期型对象
angular.isDate(value);
/////////////////////////////////////////////////////
var cc = "2014-12-12";
var date = new Date();
console.log(angular.isDate(cc)); // false
console.log(angular.isDate(date)); // true
Param | Type | Details |
---|---|---|
value | * | Reference to check. |
boolean | 是日期型的就返回true |
确定是否引用的是 数组对象
angular.isArray(value);
Param | Type | Details |
---|---|---|
value | * | Reference to check. |
boolean | 如果是数组对象返回true |
确定是否引用的是 函数
angular.isFunction(value);
Param | Type | Details |
---|---|---|
value | * | Reference to check. |
boolean | 如果是一个函数就返回true |
angular.isElement(value);
Param | Type | Details |
---|---|---|
value | * | Reference to check. |
Boolean | 如果是一个DOM元素或者是一个JQuery元素就返回true |
angular.equals(o1, o2);
//////////////////////////////////////////////////////
var cc = "2014-12-12";
var dd = "2014-12-12";
var ee = "2014";
console.log(angular.equals(cc, dd)); // true
console.log(angular.equals(cc, ee)); // false
Param | Type | Details |
---|---|---|
o1 | * | 对象或者是值进行比较 |
o2 | * | 对象或者是值进行比较 |
Boolean | 如果比较的元素相等就返回true |
创建一个深拷贝的源, 一个对象或数组.
angular.copy(source, [destination]); // 来源 目标
Param | Type | Details |
---|---|---|
source | * |
源,将用于复制。可以是任何类型,包括primitives(原语),null,未定义的。
|
destination
(optional)
|
Oject Array |
复制源到目的地。如果需要,必须是相同类型的来源。
|
* | 如果目标被指定了,目标将被拷贝或者被更新. |
angular.bind(self, fn, args);
Param | Type | Details |
---|---|---|
self | Object | 函数执行的上下文将被评估 |
fn | function() |
函数被绑定。
|
args | * | 可选参数在fn调用之前被绑定 |
function() |
函数封装了fn与所有指定的绑定
|
序列化为json格式的字符串输入. 属性前带有$符号的将被隔离,因为angular内部会用到$这个符号。
angular.toJson(obj, [pretty]);
Param | Type | Details |
---|---|---|
obj | Object Array Date sring number |
输入被序列化为JSON
|
pretty
(optional)
|
boolean |
如果设置为真,那么JSON输出将包含换行和空白
|
string undefined | JSON-合格的 字符串代表 |
angular.injector(modules);
Param | Type | Details |
---|---|---|
modules | Array.<string|function> | 一列功能莫款 |
function() | 注入器的功能. See $injector. |
angular.module
被创建在一个公共的环境里, 注册和检索Angular模块.
所有的模块(angular核心或者是第三方)都需要用这种机制来注册下。
// Create a new module
var myModule = angular.module('myModule', []);
// register a new service
myModule.value('appName', 'MyCoolApp');
// configure existing services inside initialization blocks.
myModule.config(['$locationProvider', function($locationProvider) {
// Configure existing providers
$locationProvider.hashPrefix('!');
}]);
Then you can create an injector and load your modules like this:
var injector = angular.injector(['ng', 'myModule'])
However it's more likely that you'll just use ngApp or angular.bootstrap
to simplify this process for you.
angular.module(name, [requires], [configFn]);
Param | Type | Details |
---|---|---|
name | string |
创建或检索模块的名称。
|
requires
(optional)
|
!Array.<string>= |
如果指定了那么创建新模块。如果未指定的,那么进行模块检索与进一步配置。
|
configFn
(optional)
|
Function | 可选配置功能模块。相同模块配置 |
module | 新的模块去 |
如果jQuery可用, angular.element
就是Jquery的一个小程序. 如果jQuery不可用,
angular.element将委托angular里的内置JQuery插件,
称为“jQuery lite”或“jqLite”。
jqLite 只提供以下jQuery方法:
addClass()
after()
append()
attr()
bind()
-不支持名称空间, 选择器或eventDatachildren()
-不支持选择器clone()
contents()
css()
data()
empty()
eq()
find()
- 局限于查找通过标签名hasClass()
html()
next()
- 不支持选择器on()
- 不支持名称空间, 选择器或eventDataoff()
- 不支持名称空间或选择器吗one()
- 不支持名称空间或选择器吗parent()
- 不支持选择器prepend()
prop()
ready()
remove()
removeAttr()
removeClass()
removeData()
replaceWith()
text()
toggleClass()
triggerHandler()
- 通过一个虚拟的事件对象处理程序unbind()
- 不支持名称空间val()
wrap()
Angular 还提供以下额外的jQuery和jqLite方法和事件:
$destroy
- AngularJS 阻拦了所有 jqLite/jQuery's DOM接口以及触发当前事件上controller(name)
-获取当前元素或其父母的控制器,默认情况下检索与ngController相关控制器指令。injector()
-获取当前元素或其父母的注射器。scope()
-获取当前元素或其父母的作用范围。isolateScope()
- 如果直接附加到当前元素,那么检索一个隔离范围。这只应该使用getter元素包含一个指令,开始一个新的隔离范围。调用范围在这个元素总是返回原始non-isolate范围。inheritedData()
-相同的数据但爬到DOM,直到找到一个值或达到顶级父元素。angular.element(element);
///////////////////////////////////////////////////
<p id="sss">dddd</p>
<script type="text/javascript">
var pp = document.getElementById('sss');
angular.element(pp).addClass("aaa");
</script>
Param | Type | Details |
---|---|---|
element | string DOMElement |
HTML字符串或DOMElement包裹到jQuery。
|
Object | jQuery object. |