码迷,mamicode.com
首页 > Windows程序 > 详细

嘿!@野兽,你的ng api 掉了 - - angular.identity和angular.noop

时间:2015-10-30 00:44:21      阅读:376      评论:0      收藏:0      [点我收藏+]

标签:

@野兽的 ng api 学习 -- angular.identity和angular.noop

angular.identity

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

格式:angular.identity()   

 

使用代码:

<script>

    angular.module("Demo", [])

    .controller("testCtrl", ["$scope", function ($scope) {

        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

    }])

</script>

 

angular.noop

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

格式:angular.noop();

贴代码:

  <script>

    angular.module("Demo", [])

    .controller("testCtrl", ["$scope", function ($scope) {

        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

    }])

</script>

 

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

这两个的源码也非常简单,就2-3行,而且每行代码不超过20个字母...

好了,今天就写2篇@野兽的api 学习理解吧,最近得学快点和写快点了,不然一下写不到那些更好的用法什么的....  今天小伙伴问我问题的时候也要求我尽快的写...  但是时间有限啊亲 T_T  

嘿!@野兽,你的ng api 掉了 - - angular.identity和angular.noop

标签:

原文地址:http://www.cnblogs.com/ys-ys/p/4922086.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!