您的位置:首页 > Web前端 > AngularJS

AngularJS 工具函数

2015-09-12 23:56 627 查看

angular.bind(self, fn, args)

作用:返回一个新的函数,绑定这个函数的this指向self

参数:

self:新函数的上下文对象

fn:需要绑定的函数

args:传递给函数的参数

返回值:this指向self的新函数

var obj = {
name: 'xxx',
print: function (country) {
console.log(this.name + ' is form ' + country);
}
};

var self = {
name: 'yyy'
};

var bindFn = angular.bind(self, obj.print, 'China');
//var bindFn = angular.bind(self, obj.print, ['China']);

obj.print('American'); //$ xxx is form American
bindFn(); //$ yyy is form China


angular.copy(source, [destination])

作用:对象的深拷贝

参数:

source:源对象

destination:拷贝的对象

返回值:拷贝的对象

var obj = {
name: 'xxx',
age: 50
};

var copyObj = angular.copy(obj);

console.log(copyObj); //$ Object {name: "xxx", age: 50}


angular.equals(o1, o2)

作用:正常比较和对象的深比较

参数:

o1:比较的对象

o2:比较的对象

返回值:boolean

angular.equals(3, 3); //$ true
angular.equals(NaN,NaN); //$ true
angular.equals({name:'xxx'},{name:'xxx'}); //$ true
angular.equals({name:'xxx'},{name:'yyy'}); //$ false


angular.extend(dst, src)

作用:对象的拓展

参数:

dst:拓展的对象

src:源对象

返回值:拓展的对象

var dst = {name: 'xxx', country: 'China'};
var src = {name: 'yyy', age: 10};

angular.extend(dst, src);

console.log(src); //$ Object {name: "yyy", age: 10}
console.log(dst); //$ Object {name: "yyy", country: "China", age: 10}


angular.forEach(obj, iterator, [context])

作用:对象的遍历

参数:

obj:对象

iterator:迭代函数

context:迭代函数中上下文

返回值:obj

var obj = {name: 'xxx', country: 'China'};

angular.forEach(obj, function (value, key) {
console.log(key + ':' + value);
});

//$ name:xxx
//$ country:China

var array = ['xxx', 'yyy'];

angular.forEach(array, function (item, index) {
console.log(index + ':' + item + ' form ' + this.country);
}, obj);

//$ 0:xxx form China
//$ 1:yyy form China


angular.fromJson(string)

作用:字符串转json对象

参数:

string:字符串

返回值:json对象

var json = angular.fromJson('{"name":"xxx","age":34}');

console.log(json); //$ Object {name: "xxx", age: 34}


angular.toJson(json,pretty)

作用:json对象转字符串

参数:

json:json

pretty:boolean number 控制字符串输出格式

返回值:字符串

angular.toJson({name:'xxx'});
//$ "{"name":"xxx"}"

angular.toJson({name:'xxx'},true);
//$ "{
//$    "name": "xxx"
//$ }"

angular.toJson({name:'xxx'},10);
//$ "{
//$            "name": "xxx"
//$ }"


angular.identity(value)

作用:返回这个函数的第一个参数

参数:

value:参数

返回值:第一个参数

console.log(angular.identity('xxx','yyy')); //$ xxx


angular.isArray(value)

作用:判断一个数据是否是数组

参数:

value:数据

返回值:boolean

angular.isArray(3); //$ false
angular.isArray([]); //$ true
angular.isArray([1, 2, 3]); //$ true
angular.isArray({name: 'xxx'}); //$ false


angular.isDate(value)

作用:判断一个数据是否是Date类型

参数:

value:数据

返回值:boolean

angular.isDate('2012-12-02'); //$ false
angular.isDate(new Date()); //$ true


angular.isDefined(value)

作用:判断一个数据是否是defined类型

参数:

value:数据

返回值:boolean

angular.isDefined(undefined) //$ false
angular.isDefined([]); //$ true


angular.isUndefined(value)

作用:判断一个数据是否是undefined类型

参数:

value:数据

返回值:boolean

angular.isUndefined(undefined) //$ true
angular.isUndefined([]); //$ false


angular.isFunction(value)

作用:判断一个数据是否是函数

参数:

value:数据

返回值:boolean

angular.isFunction(function(){}); //$ true
angular.isFunction(3); //$ false


angular.isNumber(value)

作用:判断一个数据是否是Number类型

参数:

value:数据

返回值:boolean

angular.isNumber(4); //$ true
angular.isNumber('xxx'); //$ false
angular.isNumber(new Number(4)); //$ false
angular.isNumber(Number(4)); //$ true


angular.isObject(value)

作用:判断一个数据是否是对象

参数:

value:数据

返回值:boolean

angular.isObject('xxx'); //$ false
angular.isObject(null); //$ false
angular.isObject([]); //$ true
angular.isObject(function(){}); //$ false
angular.isObject({name:'xxx'}); //$ true


angular.isString(value)

作用:判断一个数据是否是字符串

参数:

value:数据

返回值:boolean

angular.isString(4); //$ false
angular.isString('xxx'); //$ true
angular.isString(new String('xxx')); //$ false
angular.isString(String('xxx')); //$ true


angular.lowercase(string)

作用:将字符串大写字母变小写

参数:

string:字符串

返回值:改变后的新字符串

var newString = angular.lowercase('XXyyZZ');
console.log(newString); //$ xxyyzz


angular.uppercase(string)

作用:将字符串小写字母变大写

参数:

string:字符串

返回值:改变后的新字符串

var newString = angular.uppercase('XXyyZZ');
console.log(newString); //$ XXYYZZ


angular.noop()

作用:空函数

var flag = false;
flag ? console.log('xxx') : angular.noop();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: