Angular 学习系列 - - angular.identity和angular.noop

angular.identity

函数返回本身的第一个参数。这个函数一般用于函数风格。

格式:angular.identity()   

使用代码:

(function () {
    angular.module("Demo", [])
    .controller("testCtrl", testCtrl);function testCtrl() {         var getResult = function (fn, val) {          return (fn || angular.identity)(val);
      };      var result = getResult(function (n) { return n * 2; }, 3); //  result = 6  var null_result = getResult(null, 3);//  null_result = 3  var undefined_result = getResult(undefined, 3);// undefined _result = 3    };
  }())

angular.noop

一个不执行任何操作的空函数。这个函数一般用于函数风格。

格式:angular.noop();

贴代码:

(function () {
    angular.module("Demo", [])
    .controller("testCtrl", testCtrl);function testCtrl() {      var _console = function (v) {          return v * 2;
      };      var getResult = function (fn, val) {          return (fn || angular.noop)(val);
      };      var firstResult = getResult(_console, 3);//6  var secondResult = getResult(null, 3);//undefined  var thirdResult = getResult(undefined, 3);// undefined    };
  }())

这两个api的也是有点醉,总的来说呢,这两个方法都是用来写函数的时候用的,根据上面写的demo的代码及运行结果来看,感觉他们的作用是用来防止函数传入的是null或者undefined或者其他不能操作的对象。因为如果去掉这两个后,你在函数调用的时候传入null/undefined/或者其他不能执行的对象,那么控制台是直接报错的...

转载于:https://my.oschina.net/yeshou/blog/615041

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值