一句话: 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. 基于qml创建最简单的图像处理程序(2)-使用c++&qml进行图像处理

     <基于qml创建最简单的图像处理程序>系列课程及配套代码基于qml创建最简单的图像处理程序(1)-基于qml创建界面http://www.cnblogs.com/jsxyhelu/p/8 ...

  2. 20145101《JAVA程序设计》课程总结

    每周读书笔记链接汇总 假期笔记 第1周学习总结 第2周学习总结 第3周学习总结 第4周学习总结 第5周学习总结 第6周学习总结 第7周学习总结 第8周学习总结 第9周学习总结 第10周学习总结 实验报 ...

  3. 20145221《网络对抗》PC平台逆向破解

    20145221<网络对抗>PC平台逆向破解 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件. 该程序正常执行流程是:main调用foo函数,foo函数会简单回显任何用户 ...

  4. [Java]接受拖拽文件的窗口

    至于这个问题,Java的awt.dnd包下提供了许多完成这一功能的类 例如DropTarget.DropTargetListener等 先来讲一下DropTarget类,这个类完成和拖拽.复制文件等操 ...

  5. 向linux内核版本号添加字符/为何有时会自动添加"+"号或者"xxx-dirty"【转】

    本文转载自:https://blog.csdn.net/kangear/article/details/17020835 原文地址:http://blog.csdn.net/adaptiver/art ...

  6. MAKEFILE 编程基础之一【转】

    本文转载自:http://www.himigame.com/gcc-makefile/766.html 概述: 什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Wind ...

  7. 【详解】Dubbo的原理以及详细原理、配置

    Dubbo的背景 随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. Dubbo的应用 用于大规模 ...

  8. 【第三十一章】 elk(2)- 第二种架构(最常用架构)

    参考:http://linuxg.blog.51cto.com/4410110/1761757 最常用架构: 一.安装redis 1.下载:http://redis.io/download 2.解压后 ...

  9. BZOJ2819: Nim 树链剖分

    Description 著名游戏设计师vfleaking,最近迷上了Nim.普通的Nim游戏为:两个人进行游戏,N堆石子,每回合可以取其中某一堆的任意多个,可以取完,但不可以不取.谁不能取谁输.这个游 ...

  10. C#调用系统蜂鸣(需要发出警告时挺好用的 即使没有声卡)

    http://heavenslv.iteye.com/blog/1033870 // 声明 public class BeepUp { /// <param name="iFreque ...