1、angular.extend

  var dst = {name: 'xxx', country: 'China'};
  var src1 = {name: 'yyy', age: 10};
  var src2 = {sex:'famale',height:'tall'};
  angular.extend(dst,src1,src2);//You can specify multiple src objects.可以指定多个源对象
  console.log(dst);

  console.log(src1);

  

  从输出结果可以看出如果源元素中有与destination中相同的元素属性时,destination中的属性值会被覆盖

2、angular.toJson

  

  angular.toJson()中第二个参数为true时,代表将json形式的string格式化;

  

  格式化后更清晰。

3、angular.forEach  

  

  1. var values = {name: 'misko', gender: 'male'};
  2.   var log = [];
  3.   angular.forEach(values,function(value,key){
  4.     console.log(value + ' ' + key);
  5.     console.log(this);//此处this指log数组
  6.     this.push(key + ":" + value);
  7.   },log);
  8.   console.log(log);

  

  在forEach中this指的是第三个参数,要将数据放入的对象。

上面的对象只需要循环一次就可以,而下面的数据则需要循环两次:

  1.             var values2 = [
  2. {name: 'misko', gender: 'male'},
  3. {name: 'Amy', gender: 'female'}
  4. ];
  5. var log2 = [];
  6. angular.forEach(values2,function(value,key){
  7. console.log(key);//0 1
  8. console.log(value);//Object {name: "misko", gender: "male"} Object {name: "Amy", gender: "female"}
  9. angular.forEach(value,function(val,k){
  10. console.log(k);//name,gender,name,gender
  11. console.log(val);//misko male Amy female
  12. console.log(this);//
  13. this.push(k + ":" + val);
  14. },log2);//存放数据的对象要放在内部循环中
  15. console.log(log2);//["name:misko", "gender:male", "name:Amy", "gender:female"]
  16. });

4、angular.bind

  传递参数的方法:

    第一种:

      

  1. var ele = {"name":"Amy"};
  2. var bind = angular.bind(ele,function(age){
  3. console.log(this);
  4. console.log(this.name + ' is ' + age);
  5. });
  6. bind(25);

  

    第二种:

  1. var ele = {"name":"Amy"};
  2. var bind = angular.bind(ele,function(job){
  3. console.log(this);
  4. console.log(this.name + ' is ' + job);
  5. },'a marketer');//传递参数方法二
  6. bind();

  

5、angular.bootstrap

  angular.bootstrap手动初始化module,一个应用只能有一个ng-app,而通过angular.bootstrap可以手动启动多个module,实例如下:

  1. <div id="div1" ng-controller="myCtrl1">
  2. {{name}}
  3. </div>
  4. <div id="div2" ng-controller="myCtrl2">
  5. {{name}}
  6. </div>
  7. <script src="../angular.min.js"></script>
  8. <script>
  9. var myapp1 = angular.module('myApp1',[]);
  10. var myapp2 = angular.module('myApp2',[]);
  11. myapp1.controller('myCtrl1',['$scope',function($scope){
  12. $scope.name="zhangsan";
  13. }]);
  14. myapp2.controller('myCtrl2',['$scope',function($scope){
  15. $scope.name="lisi";
  16. }]);
  17. var div1 = document.getElementById('div1');
  18. var div2 = document.getElementById('div2');
  19. angular.element(document).ready(function(){//此页面没有使用ng-app指定任一module,而是动态添加
  20. angular.bootstrap(div1,['myApp1']);
  21. angular.bootstrap(div2,['myApp2']);
  22. });
  23. /*window.onload = function(){//整个页面加载完成时
  24. angular.bootstrap(div1,['myApp1']);
  25. angular.bootstrap(div2,['myApp2']);
  26. }*/
  27. </script>

  此段代码中没有指定ng-app,而是通过angular.bootstrap来手动加载module。

  模块之间相关依赖注入: 

  1. <body ng-app="myApp">
  2. <div ng-controller="firstCtrl">
  3. {{name}}
  4. </div>
  5. <div ng-controller="secondCtrl">
  6. {{name}}
  7. </div>
  8. <div ng-controller="thirdCtrl">
  9. {{name}}
  10. </div>
  11. <script src="../angular.min.js"></script>
  12. <script src="module2.js"></script>
  13. <script>
  14. angular.module('myApp',['myApp2'])//将myApp2注入到myApp中
  15. .controller('firstCtrl',['$scope',function($scope){
  16. $scope.name="zhangsan";
  17. }]);
  18.  
  19. </script>
  20. </body>

  module2.js:js文件中定义了模块myApp2和secondCtrl及thirdCtrl

  1. angular.module('myApp2',[])
  2. .controller('secondCtrl',['$scope',function($scope){
  3. $scope.name="lisi";
  4. }])
  5. .controller('thirdCtrl',['$scope',function($scope){
  6. $scope.name="wangwu";
  7. }]);

angularjs工具方法的更多相关文章

  1. angularjs——工具方法

    1.fromJson 把json字符串转成JSON对象 var jsonStr='[{"Name":"abc","age":12},{&qu ...

  2. angularjs 工具方法

    <!DOCTYPE HTML> <html ng-app> <head> <meta http-equiv="Content-Type" ...

  3. javascript 的工具方法 --- 类型判断

    Javascript中常见类型对象有: Boolean, Number, String, Function, Array, Date, RegExp, Object, Error, Symbol等等. ...

  4. JQuery操作类数组的工具方法

    JQuery学习之操作类数组的工具方法 在很多时候,JQuery的$()函数都返回一个类似数据的JQuery对象,例如$('div')将返回div里面的所有div元素包装的JQuery对象.在这中情况 ...

  5. 当AngularJS POST方法碰上PHP

    问题描述 怎么POST过去给PHP都收不到资料? $_POST方法取不到正确的传入值! 原理说明 AngularJS这套framework使用的AJAX方法中,资料传递的格式为JSON,送出去的hea ...

  6. jQuery工具方法

    目录 常用工具方法 判断数据类型的方法 Ajax操作 $.ajax 简便写法 Ajax事件 返回值 JSONP 文件上传 参考链接 jQuery函数库提供了一个jQuery对象(简写为$),这个对象本 ...

  7. jQuery晦涩的底层工具方法们

    这里整理的是jQuery源码中一些比较晦涩难懂的.内部的.最底层的工具方法,它们多为jQuery的上层api方法服务,目前包括: jQuery.access jQuery.access: functi ...

  8. angular的工具方法笔记(equals, HashKey)

    分别是angular脏值检测的工具方法equals和 类HashKey的使用方法 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transi ...

  9. JavaScript文件中调用AngularJS内部方法或改变$scope变量

    需要在其他JavaScript文件中调用AngularJS内部方法或改变$scope变量,同时还要保持双向数据绑定: 首先获取AngularJS application: 方法一:通过controll ...

随机推荐

  1. SqlServer——批量插入数据

    像Major表里面批量插入数据演示: 代码如下: Declare @I int Set @I= Begin Tran InsertData: Insert into Major values(@I,' ...

  2. 文本域的宽度和高度应该用cols和rows来控制,还是 用width和height来控制

    文本域宽度如果用cols来控制,缩放网页的时候文本域的宽度不会自动变化 用width来表示就会跟着网页缩放而缩放 看到下面一段文字: 对于内容至上的网页,在禁用CSS的情况下,HTML内容要做到易于阅 ...

  3. MapReduce编程示例

    1.将hadoop插件放入eclipse/plugins目录中 2.eclipse配置hadoop 依赖包目录 Window—Preferences 3.新建Map/Reduce Project项目 ...

  4. less sass学习总结(——待续哦——)

    一:less.sass是为了解决什么?  为什么要让css以编程语言来书写呢?

  5. iOS开发--音乐文件播放工具类的封装(包含了音效的封装)

    一.头文件 #import <Foundation/Foundation.h> #import <AVFoundation/AVFoundation.h> @interface ...

  6. 浅谈HTTP请求头content-type

    请求消息和响应消息都可以包含实体信息,实体信息一般由实体头域和实体组成.实体头域包含关于实体的原信息,实体头包括Allow.Content- Base.Content-Encoding.Content ...

  7. Fiddler内置命令

    我猜你肯定忽略了下边这个小黑框: 虽然它不是很显眼,但用好它,会让你的工作效率提高 N 倍! 这跟喜欢 Linux 的朋友一样,肯定更倾向于用一两个命令代替鼠标不断的点点点操作. Fiddler 将每 ...

  8. poj3233 矩阵等比数列求和 二分

    对于数列S(n) = a + a^2 + a^3 +....+ a^n; 可以用二分的思想进行下列的优化. if(n & 1) S(n) = a + a^2 + a^3 + ....... + ...

  9. hibernate DetachedCriteria实现多表关联查询createAlias的使用

    记录本例查询初衷: 有表: 表1,表2,表3 关系 1 many-to-one 2 2 many-to-one 3 结果:要通过表3中的条件反向查询表1中相关的数据 public Page<We ...

  10. C# 输入ip段生成ip地址

    具体代码如下: private void button1_Click(object sender, EventArgs e)        {            string StartIp = ...