一句话: filter是万能的数据处理器,可以过滤数据,排序数据,删除数据,扩展数据

1. 内置filter大全

url: https://docs.angularjs.org/api/ng/filter

uppercase lowercase 转换为大小写
date 转换为各种日期格式
number 将数字格式化成文本。 它的第二个参数是可选的, 用来控制小数点后截取的位数
currency 转换为货币形式
json 转换json或javascript对象成字符串
filter 过滤数据,可以是字符串,对象,函数
limitTo 生成新的部分字符串或数组,可以正序倒序截取
orderBy 排序,按函数,字符串或数组
编程式使用filter  
自定义filter

2. 实例

 <div ng-controller="ExampleController">
<span ng-init="global.fNumber='1234567890'"></span>
<span ng-init="global.fString='Hello filter from Michael Qin'"></span>
<span ng-init="global.fArray=['Dog', 'gOat', 'cat']"></span>
<span ng-init="global.fObjArray=[{name: 'dog', age: 10}, {name: 'Goat', age: 20}, {name: 'cat', age: 30}]"></span> <script>
var myApp = angular.module('myApp', []);
myApp.controller('ExampleController', function($scope) {
$scope.global = {};
$scope.global.fDate = new Date(); $scope.isCapitalized = function(str) {
return str[0] == str[0].toUpperCase();
}; });
</script> <hr>
<div>
<label>uppercase lowercase实例</label><p></p>
<strong>uppercase:</strong> <span>{{global.fString | uppercase}}</span> {{global.fString}}<br>
<strong>lowercase:</strong> <span>{{global.fString | lowercase}}</span> <br>
</div> <hr>
<div>
<label>date实例</label><p></p>
{{global.fDate | date: 'medium'}} <br>
{{global.fDate | date: 'short'}} <br>
{{global.fDate | date: 'fullDate'}} <br>
{{global.fDate | date: 'longDate'}} <br>
{{global.fDate | date: 'mediumDate'}} <br>
{{global.fDate | date: 'shortDate'}} <br>
{{global.fDate | date: 'mediumTime'}} <br>
{{global.fDate | date: 'shortTime'}} <br>
{{global.fDate | date: 'yyyy'}} <br>
{{global.fDate | date: 'yy'}} <br>
{{global.fDate | date: 'y'}} <br>
{{global.fDate | date: 'MMMM'}} <br>
{{global.fDate | date: 'MMM'}} <br>
{{global.fDate | date: 'MM'}} <br>
{{global.fDate | date: 'M'}} <br>
{{global.fDate | date: 'dd'}} <br>
{{global.fDate | date: 'd'}} <br>
{{global.fDate | date: 'EEEE'}} <br>
{{global.fDate | date: 'hh:mm:ss.sss'}} <br>
{{global.fDate | date: 'yyyy-MM-dd hh:mm:ss'}} <br>
{{global.fDate | date: 'yyyy/MM/dd hh:mm:ss'}} <br>
{{global.fDate | date: 'MM/dd/yyyy hh:mm:ss'}} <br>
</div> <hr>
<div>
<label>number实例</label><p></p>
{{global.fNumber}} <br>
{{global.fNumber | number}} <br>
{{global.fNumber | number: 2}} <br>
{{global.fNumber | number: 5}} <br>
</div> <hr>
<div>
<label>currency实例</label><p></p>
{{global.fNumber | currency}} <br>
{{global.fNumber | currency: "€"}} <br>
{{global.fNumber | currency: "£"}} <br>
{{global.fNumber | currency: "CNY"}} <br>
{{global.fNumber | currency: "¥"}} <br>
{{global.fNumber | currency: "元"}} <br>
{{global.fNumber | currency: "圓"}} <br>
</div> <hr>
<div>
<label>json实例</label><p></p>
{{global.fObjArray | json}} <br>
</div> <hr>
<div>
<label>filter实例</label><p></p>
{{global.fArray | filter: 'o' }} <br>
{{global.fArray | filter: isCapitalized }} <br>
{{global.fObjArray | filter:{name: 'dog'} }} <br>
</div> <hr>
<div>
<label>limitTo实例</label><p></p>
{{global.fString | limitTo: 3 }} <br>
{{global.fArray | limitTo: 2 }} <br>
{{global.fObjArray | limitTo: -2 }} <br>
</div> <hr>
<div>
<label>orderBy实例</label><p></p>
{{global.fObjArray | orderBy: 'age' }} <br>
{{global.fObjArray | orderBy: 'age': true }} <br>
{{global.fObjArray | orderBy: '-age'}} <br>
{{global.fObjArray | orderBy: 'age': false }} <br>
{{global.fObjArray | orderBy: '+age'}} <br>
</div> <hr>
<div>
<label>编程式使用filter实例</label><p></p>
<xmp>
$filter('filter')(array, expression, comparator)
$filter('currency')(amount, symbol, fractionSize)
$filter('number')(number, fractionSize)
$filter('date')(date, format, timezone)
$filter('json')(object, spacing)
$filter('lowercase')()
$filter('uppercase')()
$filter('limitTo')(input, limit, begin)
$filter('orderBy')(array, expression, reverse)
</xmp>
</div> <hr>
<div>
<label>自定义filter实例</label><p></p>
<script>
myApp.filter('age20', function() {
return function(input) {
for(var i = 0; i < input.length; i++) {
if (input[i].age == 20) {
return input[i];
}
}
};
});
</script>
{{global.fObjArray | age20 }} <br>
</div> <hr>
<hr>
</div>

3. 查看运行结果及基部源码

http://jimuyouyou.github.io/angular-bootstrap-rest-seed/examples/angular/4-filters.html

4. github项目地址

https://github.com/jimuyouyou/angular-bootstrap-rest-seed

简话Angular 04 Angular过滤器详解的更多相关文章

  1. MVC过滤器详解

    MVC过滤器详解   APS.NET MVC中(以下简称"MVC")的每一个请求,都会分配给相应的控制器和对应的行为方法去处理,而在这些处理的前前后后如果想再加一些额外的逻辑处理. ...

  2. Asp.Net MVC学习总结之过滤器详解(转载)

    来源:http://www.php.cn/csharp-article-359736.html   一.过滤器简介 1.1.理解什么是过滤器 1.过滤器(Filters)就是向请求处理管道中注入额外的 ...

  3. Wireshark过滤器详解

    Wireshark过滤器详解 1.Wireshark主要提供两种主要的过滤器 捕获过滤器:当进行数据包捕获时,只有那些满足给定的包含/排除表达式的数据包会被捕获 显示过滤器:该过滤器根据指定的表达式用 ...

  4. angular-ngSanitize模块-linky过滤器详解

    本篇主要讲解angular中的linky这个过滤器.此过滤器依赖于ngSanitize模块. linky能找出文本中的链接,然后把它转换成html链接.什么意思,就是说,一段文本里有一个链接,但是这个 ...

  5. TeamViewer的下载、安装和使用(windows7、CentOS6.5和Ubuntu14.04(64bit))(图文详解)

    不多说,直接上干货! TeamViewr是远程支持.远程访问.在线协作和会议软件. 分为从windows7.CentOS6.5和Ubuntu14.04(64bit) 系统来详解下载.安装和初步使用! ...

  6. shell sed过滤器详解

    1. Sed简介sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中 ...

  7. angular之$watch方法详解

    在$apply方法中提到过脏检查,首先apply方法会触发evel方法,当evel方法解析成功后,会去触发digest方法,digest方法会触发watch方法. (1)$watch简介 在diges ...

  8. [转]Angular项目目录结构详解

    本文转自:https://blog.csdn.net/yuzhiqiang_1993/article/details/71191873 版权声明:本文为博主原创文章,转载请注明地址.如果文中有什么纰漏 ...

  9. angular五种服务详解

    在这之前angular学习笔记(十五)-module里的'服务'这篇文章里,已经大致讲解了ng中的'服务',在之后的很多地方也用到了服务,但是,所有的服务都是使用app.factory来创建的.但其实 ...

随机推荐

  1. 利用构建缓存机制缩短Docker镜像构建时间

    在使用Docker部署PHP或者node.js应用时,常用的方法是将代码和环境镜像打包成一个镜像然后运行,一些云厂商提供了非常便捷的操作,只需要把我们的代码提交到VCS上,然后它们就会帮我们拉取代码并 ...

  2. 面向对象初调用:foolish 电梯

    本周我们完成的任务是傻瓜电梯的调度,对于那十分十分详细的指导书,我感觉想要说明白题目要求,是做不到的,所以就把指导书贴出来给大家看了,,由于在下还不会网页制作,只能通过百度网盘了,https://pa ...

  3. 六角填数|2014年蓝桥杯B组题解析第七题-fishers

    六角填数 如图所示六角形中,填入1~12的数字. 使得每条直线上的数字之和都相同. 图中,已经替你填好了3个数字,请你计算星号位置所代表的数字是多少? 请通过浏览器提交答案,不要填写多余的内容. 思路 ...

  4. mysql 通过binlog 查看执行日志

    环境:linux deepin15.7   mysql 5.7 1.开启binlog vim /etc/mysql/mysql.conf.d/mysqld.cnf 添加 log_bin = /var/ ...

  5. Atcoder Educational DP Contest

    前面简单一点的题直接过吧. A 暴力DP B 怎么还是暴力DP C 还是暴力DP D 直接背包 E 这个背包不太一样了,这里有一个技巧,就是因为价值很小,所以直接对价值背包,求出来达到某一个权值最小的 ...

  6. 总结java中的super和this关键字

    知识点: 在java类中使用super引用父类的成分,用this引用当前对象 this可以修饰属性.构造器.方法 super可以修饰属性.构造器.方法 关于子类实例化过程中的内存分配,在下一篇博客中说 ...

  7. Facebook广告API系列 2 - Audience Management

    Facebook广告API系列 2 Facebook marketing API有三大组成部分: Audience Management Ads Management Ads Insights 本篇稍 ...

  8. 第五次程序设计作业 C++计算器雏形 调用文件输入输出

    一.C++计算器作业系列链接 第三次作业:C++计算器雏形 第三次作业附加:代码规范 第四次作业:命令行的调用及计算 MyGithub 二.本次作业相关 要求:第五次程序设计作业 根据这一次的作业要求 ...

  9. 贪心算法-Best cow line-字典序问题

    代码: #include<cstdio> #include<iostream> #include<stdlib.h> #include<string> ...

  10. TCGA系列--LncMAP

    LncMAP:http://www.bio-bigdata.com/LncMAP/index.jsp