当前位置: 首页 > news >正文

AngularJs工具方法

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 

注意:bind会根据你的参数类型来决定调用call或apply,所以args可以是一个个数据,也可以是一个数组哦。

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();

转载于:https://www.cnblogs.com/zengk/p/7405400.html

相关文章:

  • 线上 python http server profile 实践
  • 关于Unity中如何立即中断动画然后重新开始播放
  • windows下安装bpython方法 (新)
  • 为tomcat配置项目必须的引擎文件
  • ORACLE in与exists语句的区别
  • HDU 6170 - Two strings | 2017 ZJUT Multi-University Training 9
  • WebLogic 10.3.6与JDK 1.7的兼容问题
  • vnx通过iscsi连接esxi主机,并挂载nfs和block
  • 栈和队列
  • 查看索引的状态
  • 二级MSOffice高级应用考试大纲(2013年版)
  • POJ 1830 开关问题 高斯消元
  • CAN协议,系统结构和帧结构
  • New Concept English Two 11 28
  • centos 配置sudo记录日志
  • [iOS]Core Data浅析一 -- 启用Core Data
  • 【笔记】你不知道的JS读书笔记——Promise
  • 2019.2.20 c++ 知识梳理
  • canvas绘制圆角头像
  • JavaScript DOM 10 - 滚动
  • Java比较器对数组,集合排序
  • Laravel5.4 Queues队列学习
  • Linux Process Manage
  • MD5加密原理解析及OC版原理实现
  • Nginx 通过 Lua + Redis 实现动态封禁 IP
  • PAT A1092
  • php中curl和soap方式请求服务超时问题
  • spring boot 整合mybatis 无法输出sql的问题
  • SpringBoot几种定时任务的实现方式
  • Theano - 导数
  • yii2权限控制rbac之rule详细讲解
  • 服务器从安装到部署全过程(二)
  • 关于使用markdown的方法(引自CSDN教程)
  • 码农张的Bug人生 - 见面之礼
  • 猫头鹰的深夜翻译:Java 2D Graphics, 简单的仿射变换
  • 浅析微信支付:申请退款、退款回调接口、查询退款
  • 我与Jetbrains的这些年
  • 小程序01:wepy框架整合iview webapp UI
  • 运行时添加log4j2的appender
  • 分布式关系型数据库服务 DRDS 支持显示的 Prepare 及逻辑库锁功能等多项能力 ...
  • 函数计算新功能-----支持C#函数
  • ​​快速排序(四)——挖坑法,前后指针法与非递归
  • ​【C语言】长篇详解,字符系列篇3-----strstr,strtok,strerror字符串函数的使用【图文详解​】
  • ###项目技术发展史
  • #1014 : Trie树
  • #我与Java虚拟机的故事#连载14:挑战高薪面试必看
  • #我与Java虚拟机的故事#连载18:JAVA成长之路
  • (003)SlickEdit Unity的补全
  • (04)Hive的相关概念——order by 、sort by、distribute by 、cluster by
  • (13)Latex:基于ΤΕΧ的自动排版系统——写论文必备
  • (C语言)求出1,2,5三个数不同个数组合为100的组合个数
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (八)Spring源码解析:Spring MVC
  • (二)JAVA使用POI操作excel
  • (分类)KNN算法- 参数调优