Angular中工具方法

angular.copy(source, [destination])

  • 作用: 对象的深度拷贝
  • 参数:
    • source: 原对象
    • destination:被拷贝的对象(可选参数)
  • 返回值: 拷贝后的对象

angular.extend(dst, src)

  • 作用: 对象的拓展
  • 参数:
    • dst: 拓展的对象
    • src: 源对象
  • 返回值: 拓展的对象

使用示例:

https://jsfiddle.net/ioneway100072/bdpg45o6/

区别:

  1. copy函数的dstination参数可以省略,而extend的dst不可以省略
  2. copy是深度拷贝,而extend是浅拷贝.
  3. copy和extend的参数dst 与 src的位置相反。

相同点:

  1. copy 与 extend 都会返回dst对象。

---------------------------------------------

angular.isDefined(value)

  • 作用:判断一个数据是否是defined类型
  • 参数:
    • value: 数据
  • 返回值:boolean
angular.isDefined(undefined)    //false
angular.isDefined([])   //true

angular.isFunction(value)

  • 作用: 判断一个数据是否是函数
  • 参数:
    • value: 数据
  • 返回值:boolean
angular.isFunction(function(){ });        //true
angular.isFunction(3);      //false

angular.isNumber(value)

  • 作用:判断一个数据是否是Number类型
  • 参数:
    • value: 数据
  • 返回值: boolean
angular.isNumber(4);
angular.isNumber('xxx');
angular.isNumber(new Number(4));   //false   //原因详查
angular.isNumber(Number(4));    // true

angular.lowercase(string)

  • 作用:将字符串大写字母变小写
  • 参数:
    • string: 字符串
  • 返回值: 改变后的新字符串
var newString = angular.lowercase('XYyyZZ');
console.log(newString);

angular.uppercase(string)

  • 作用: 将字符串小写字母变大写
  • 参数:
    • string: 字符串
  • 返回值: 改变后的新字符串
var newString = angular.upercase('XYyyZz');
console.log(newString);

angualr.fromJson(string)

  • 作用: 字符串转json对象
  • 参数:
    - string: 字符串
  • 返回值: json对象
var json = angular.fromJson('{"name":"xxx", "age":34}');
console.log(json);

angular.toJson(json)

  • 作用: json对象转字符串
  • 参数:
    - json: json
    - pretty: boolean number 控制字符串输出格式
  • 返回值: 字符串
angular.toJson({name: 'xxx'});
// "{'name': 'xxx'}"

angular.identity(value)

  • 作用: 返回这个函数的第一个参数
  • 参数:
    • value:参数
  • 返回值: 第一个参数
    一般用于函数风格
    使用见:
console.log(angular.identity('xxx', 'yyy'));   //xxx

angular.noop()

  • 作用: 空函数
    使用见:
var flag = false;
flag ? console.log('xxx') : angular.noop();

angular.isArray(value)

  • 作用: 判断一个数据是否是数组
  • 参数:
    • value: 数据
  • 返回值: boolean
angular.isArray(3);
angular.isArray([]);  //true

angular.isDate(value)

  • 作用: 判断一个数据是否是Date 类型
  • 参数:
    - value: 数据
  • 返回值: boolean
angular.isDate('2012-12-02');     //fale
angular.isDate(new Date());        //true

angular.isDefined(value)

  • 作用: 判断一个数据是否是defined类型
  • 参数:
    • value: 数据
  • 返回值: boolean

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'});

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中工具方法)