angularjs学习笔记—工具方法

1.angular.bind(self, fn, args)

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

    • 参数:
      self:新函数的上下文对象

      fn:需要绑定的函数

      args:传递给函数的参数

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

var obj = {name: 'xxx',print: function (country) {console.log(this.name + ' is from ' + 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 from American
bindFn();//yyy is from China

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

2.angular.copy(source, [destination])

    • 作用:对象的深拷贝

    • 参数:
      source:源对象

      destination:拷贝的对象

    • 返回值:拷贝的对象

var obj = {name: 'zuobaiquan',age: 20
};
var copyObj = angular.copy(obj);
console.log(copyObj); //Object {name: "zuobaiquan", age: 20}

3.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

4.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}
//注意这里的name此时变成了 "yyy"

  

5.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:Chinavar array = ['xxx', 'yyy'];
angular.forEach(array, function (item, index) {console.log(index + ':' + item + ' from ' + this.country);
}, obj);
//0:xxx from China
//1:yyy from China

  

6.angular.fromJson(string)

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

  

7.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"
// }"

  

8.angular.identity(value)

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

  

9.angular.isArray(value)

    • 作用:判断一个数据是否是数组
    • 参数:
      value:数据
    • 返回值:boolean
angular.isArray(3); // false
angular.isArray([]); // true
angular.isArray([1, 2, 3]); // true
angular.isArray({name: 'xxx'}); // false

  

10.angular.isDate(value)

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

    • 参数:
      value:数据

    • 返回值:boolean

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

  

11.angular.isDefined(value)

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

    • 参数:
      value:数据

    • 返回值:boolean

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

  

12.angular.isUndefined(value)

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

    • 参数:
      value:数据

    • 返回值:boolean

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

  

13.angular.isFunction(value)

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

  

14.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

  

15.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

16.angular.isString(value)

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

    • 参数:
      value:数据

    • 返回值:boolean

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

  

17.angular.lowercase(string)

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

    • 参数:
      string:字符串

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

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

  

18.angular.uppercase(string)

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

    • 参数:
      string:字符串

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

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

  

19.angular.noop()

作用:空函数

var flag = false;    
flag ? console.log('xxx') : angular.noop();

转载于:https://www.cnblogs.com/zuobaiquan01/p/8414200.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/398704.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

SpringMVC配置项学习笔记

1. <mvc:annotation-driven /> <mvc:annotation-driven />是一种简写形式&#xff0c;默认会注册DefaultAnnotationHandlerMapping和DefaultAnnotationHandlerAdapt两个bean&#xff0c;是spring mvc为Controller分发请求所必须的&#xff0c;它还提供了NumberForm…

MIT算法导论(一)——算法分析和引论

文章目录1 算法分析及引论1.1 算法1.2 排序1.2.1 插入排序1.2.1.1 插入排序原理1.2.1.2 时间复杂度1.2.1.3 渐进时间复杂度1.2.1.4 回到算法1.2.2 归并排序1.2.2.1 归并排序原理1.2.2.2 归并排序时间复杂度1 算法分析及引论 1.1 算法 算法是一门关注性能的学科&#xff0c;也…

使用Apache Tomcat Maven插件部署运行 Web 项目

2019独角兽企业重金招聘Python工程师标准>>> 什么是Apache Tomcat Maven Plugin&#xff1f; Maven Plugin 是Apache Tomcat 提供的一个Maven插件&#xff0c;它可以在你没有tomcat容器时将任何一个war项目文件部署在该插件上提供访问。 为什么要用Apache Tomcat Ma…

POJ2104 (平方分割)二分查找理解。

题意&#xff1a;任意区间求第k大数 思路&#xff1a; 预处理&#xff1a;利用平方分割&#xff08;分桶法&#xff09;把区间切割成B sqrt(n)大小的一块块&#xff0c;然后每个各自排序。 二分第k大数x&#xff0c;接着就需要求[l,r]区间中x的排名&#xff0c;与k比较&#x…

每日一题——leetcode237 删除链表中的结点

1 题目 237. 删除链表中的节点 难度简单 请编写一个函数&#xff0c;用于 删除单链表中某个特定节点 。在设计函数时需要注意&#xff0c;你无法访问链表的头节点 head &#xff0c;只能直接访问 要被删除的节点 。 题目数据保证需要删除的节点 不是末尾节点 。 示例 1&am…

error: stray '\343' in program 问题解决

当我们从网上copy一段代码后&#xff0c;总会出现这个问题。博主在Arduino环境中也出现了&#xff0c;so,这个问题应该是C语言和C编译器中才会出现的。 test_int:19: error: stray \343 in program 銆?銆? char string[25]; ^ test_int:19: error: stray \200 in progr…

wex5中win8或者win10操作系统studio中新建.w向导或其他的编辑窗口显示不全

多数情况都是通过方法2解决的 &#xff08;1&#xff09; 确认是否把操作系统的字体调整为非100%了&#xff08;2&#xff09; 把studio\dropins\studio-app2\plugins\plugin\lib\cef1\chromium.jar这个jar包复制到studio\dropins\studio-app2\plugins\plugin\lib下&#xff0c…

安装CoreOS到磁盘

1 打开翻&&墙软件 2 打开迅雷&#xff0c;启用“使用IE代理”&#xff0c;下载以下两个文件&#xff1a;&#xff08;翻&&墙后用IE下会中断&#xff09; http://stable.release.core-os.net/amd64-usr/494.4.0/coreos_production_image.bin.bz2.sig http://sta…

机器学习的练功心法(一)——机器学习概述

1 机器学习概述 文章目录1 机器学习概述1.1 学习方法1.2 什么是机器学习1.3 监督学习1.4 无监督学习1.5 强化学习1.6 机器学习的开发流程1.1 学习方法 引入&#xff1a;对于机器学习来说&#xff0c;我们需要有一个大局观&#xff0c;什么是大局观&#xff1f;你站的比别人高&…

数学之路-分布式计算-disco(4)

第一个參数iter是一个迭代器&#xff0c;涉及被map函数产生的键和值。它们是reduce实例。在本例中。单词随机被托付给不同的reduce实例。然后&#xff0c;要单词同样&#xff0c;处理它的reduce也同样。可确保终于合计是正确的。第二个參数params与map函数中一致&#xff0c;在…

项目管理规范

从鼬加入的那一周开始&#xff0c;四代就开始着手准备起草代码规范了。代码规范不可少很多人理直气壮的认为&#xff0c;创业团队&#xff0c;或者说人数少的团队根本不需要代码规范。他们的口头禅经常是&#xff1a;“没办法啊&#xff01;我们需要快速的完成客户的需求啊&…

每日一题——王道考研2.2.4.1

1 题目 从顺序表中删除具有最小值的元素&#xff08;假设唯一&#xff09;&#xff0c;并由函数返回被删元素的值。空出的位置由最后一个元素填补&#xff0c;若顺序表为空&#xff0c;则显示出错信息并退出运行。 ——出自王道书2023版2.2.4的第二大题第一小题 2 思路 既然…

23种设计模式----------建造者模式

建造者模式&#xff1a;像是模板方法模式的升级。也叫生成器模式。将一个复杂对象的构造与它的表示分离&#xff0c;使得同样的构建过程可以创建不同的表示。其实就是创建一大类的东西&#xff0c; 但是具体又有些差异。 在建造者模式中&#xff0c;一般有四个角色&#xff1a;…

批处理启动vm虚拟机服务 vm12启动无界面启动vm虚拟机系统 windows上如何操作服务 sc net启动关闭服务...

windows(win10)批处理脚本 打开vm虚拟机的服务,并且开启无界面虚拟机 echo off net start "vds" net start "VMAuthdService" net start "VMnetDHCP" net start "VMware NAT Service" net start "VMUSBArbService" net star…

机器学习的练功心法(二)——概述

2 概述 文章目录2 概述2.1 模型概述2.1.1 预测房价问题2.1.2 符号2.2 代价函数2.3 代价函数的用处2.4 回到问题2.5 梯度下降2.6 梯度下降知识点总结2.7 线性回归模型的梯度下降2.1 模型概述 2.1.1 预测房价问题 在我们要开始下面的问题前&#xff0c;我们先来看一些关于房价预…

努力做一名认真踏实的工程师

以下内容的来源&#xff1a;http://www.dndev.com/cgi-bin/forum/topic.cgi?forum2&topic1209&show0 转抄网上的一个帖子&#xff1a; 1. 不要看到别人的回复&#xff0c;第一句话就说&#xff1a;给个代码吧&#xff01;你应该想想为什么。当你自己想出来再参考别人…

Mac openCV环境搭建

安装 Homebrew $ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" $ echo export PATH"/usr/local/bin:$PATH" >> ~/.bash_profile $ brew doctor 安装 OpenCV brew install opencv 安装pip sudo easy_…

Jquery对象和DOM对象---Jquery API (1)

文&#xff0f;饥人谷_韩宝亿&#xff08;简书作者&#xff09;原文链接&#xff1a;http://www.jianshu.com/p/98a0c82c47e4著作权归作者所有&#xff0c;转载请联系作者获得授权&#xff0c;并标注“简书作者”。一、为什么要用Jquery? DOM API 1.难用 要想拿到一个对象&…

Effective STL中文版pdf

下载地址&#xff1a;网盘下载内容简介 STL是C标准库的一部分。本书是针对STL的经验总结&#xff0c;书中列出了50个条款&#xff0c;绝大多数条款都解释了在使用STL时应该注意的某一个方面的问题&#xff0c;并且详尽地分析了问题的来源、解决方案的优劣。转载于:https:…

关于SWT/JFace中其他常用的事件

1.addSelectionListener:这个监听器最常用. 这个addSelectionListener是一个方法,addSelectionListener(SelectionListener listener)传入的是一个 SelectionListener类型的参数对象.SelectionAdapter实现了这个SelectionListener接口. SelectionListener接口中有下面的这个两个…