ng 过滤器
1、ng中自带的过滤器
过滤器:实现对数据的筛选、过滤、格式化。
过滤器是一个有返回值的方法。
过滤器语法:
{{ expression |过滤器1:'参数' | 过滤器2:'参数' }}
| --》 管道,支持多重过滤。
常见的过滤器中:
①currency 货币样式的格式化
②date 日期格式化 参数: y M d h m s 年月日 时分秒
③filter 将一个array,处理一个新的数组
④json 将对象转换成json格式的字符串
'{"name":123}'
⑤uppercase/lowercase 大小写的转换
⑥orderBy 排序:按照字符串首字母排序,按照数字的大小排序,默认是升序的。
{{ expression | orderBy:'':boolean}}
⑦number 将一个数字进行格式化,根据参数决定显示小数点后的位数
⑧limitTo
限定数组中的个数
例子:
效果:

代码:
<!DOCTYPE html>
<html ng-app="myApp">
<head lang="en">
<meta charset="UTF-8">
<script src="js/angular.js"></script>
<title></title>
</head>
<body>
<div ng-controller="myCtrl">
<!-- 货币-->
<p>{{price | currency}}</p>
<p>{{price | currency :'¥'}}</p>
<!-- 日期-->
<p>{{myDate}}</p>
<p>{{myDate | date:'MM-dd hh-mm'}}</p>
<!-- 大小写转换-->
<p>{{name | uppercase}}</p>
<p>{{name | lowercase}}</p>
<!-- 排序 order by-->
<ul>
<li ng-repeat="stu in stuList
| orderBy:'age':true">
<p>
{{"name is "+stu.name+" age is "+stu.age}}
</p>
</li>
</ul>
<p>{{"num is "+num}}</p>
<p>{{num | number:2}}</p> <ol>
<li ng-repeat="tmp in list | limitTo:2">
{{tmp}}
</li>
</ol> </div>
<script>
var app = angular.module('myApp', ['ng']);
app.controller('myCtrl', function ($scope) {
console.log('myCtrl func is called');
$scope.price = 1002;
$scope.myDate = new Date();//初始化一个日期
//大小写转换
$scope.name = 'Michael';
$scope.stuList = [
{name:'zhangsan',age:20},
{name:'lisi',age:28},
{name:'wanger',age:22}
]; $scope.num = 10.2333;
$scope.list = [10,20,30,40,50]; })
</script>
</body>
</html>
2.通过$scope定义一个对象数组(5个),对象包含的属性:score\age\name。
实现按照score降序只显示前三名。
orderBy limitTo.
效果:

代码:
<!DOCTYPE html>
<html ng-app="myApp">
<head lang="en">
<meta charset="UTF-8">
<script src="js/angular.js"></script>
<title></title>
</head>
<body>
<div ng-controller="myCtrl">
<ul>
<li ng-repeat="stu in stuList
| orderBy:'score':true
| limitTo:3">
{{stu.name+"-"+stu.age+"-"+stu.score}}
</li>
</ul>
</div>
<script>
var app = angular.module('myApp', ['ng']);
app.controller('myCtrl', function ($scope) {
console.log('myCtrl func is called');
$scope.stuList = [
{name:'name6',age:10,score:80},
{name:'name5',age:10,score:79},
{name:'name4',age:10,score:82},
{name:'name3',age:10,score:89},
{name:'name2',age:10,score:60}
];
})
</script>
</body>
</html>
ng 过滤器的更多相关文章
- Angularjs中对时间格式:/Date(1448864369815)/ 的处理
注:本文使用的 angular 版本为 1.3 版 我们在后台对数据进行json序列化时,如果数据中包含有日期,序列化后返回到前端的结果可能是这样的: /Date(1448864369815)/ . ...
- ng自定义一个过滤器
ng允许我们自定义指令 下面来我们自己来定义一个过滤指令:filter,返回一个函数的形式 filter(name,callback(){//name:过滤器的名字,callback:匿名函数 ret ...
- 关于ng的过滤器的详细解释angular-filter
在使用ng框架做项目的时候,我们可能会使用到ng自带的过滤器,来进行数据的筛选 一:ng自带的过滤器:currency ,date,limitTo,lowercase,uppercase,number ...
- struts过滤器的不同2.16以后应该是: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 2.12以前应该是org.apache.struts2.dispatcher.Filterdispatcher
版本不同过滤器不同.2.16以后应该是:org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter2.12以前应该是or ...
- ng 自定义过滤器的创建和使用
过滤器的本质就是一个方法,参数就是输入的值以及给过滤器指定的参数,返回值就是处理后要显示的值. ①过滤器创建var app = angular.module();app.filter(‘名称’,fun ...
- ng中的过滤器
angular中对输出的值提供过滤器,用法如下: {{name | currency:"¥"}}</p> 这是在在html中的用法,用 | 来添加过滤器,过滤器后面通过 ...
- 前端MVC学习总结(二)——AngularJS验证、过滤器、指令
一.验证 angularJS中提供了许多的验证指令,可以轻松的实现验证,只需要在表单元素上添加相应的ng属性,常见的如下所示: <input Type="text" ng-m ...
- angularjs之filter过滤器
现在公司用ionic,就是基于angularjs封装了一些api用于webapp,最近用的angularjs的filter确实省了很多代码,现在总结一下! ng比较鸡肋的过滤器,这里就一笔带过吧!鸡汤 ...
- filter 过滤器(监听)
Filter 过滤器 1.简介 Filter也称之为过滤器,它是Servlet技术中最实用的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, ...
随机推荐
- mysql二进制包安装和遇到的问题
一.编译安装 tar -zxf mysql-5.5.32-linux2.6-x86_64.tar.gz mv mysql-5.5.32-linux2.6-x86_64 /application/mys ...
- Python(文件处理)
二.基本操作 #r''------------------>> r:原生字符串,不判断符号的含义#文件处理 f=open(r’c:\a.txt’,’r’,encoding=’utf-8’) ...
- 设置SVN提交日志必填
1.打开visualSVN Server2.打开Repositories3.右键需要控制的项目->所有任务->manage hooks...4.选择Hooks tab,点击Pre-comm ...
- js原型 作用域
了解JavaScript原型链之前首先肯定要知道什么是原型. JavaScript中,原型是一个对象,通过原型可以实现属性的继承.既然原型是一个对象,那么任何一个对象都可以称为原型吗?是,记住它.什么 ...
- Entity FrameWork 配置 之连接字符串隐藏或重用
C/S项目中使用EF,默认回生成app.config文件夹,软件打包安装成功之后就回生成一个对应exe.config.里面会包含配置的一些信息. 这里介绍给大家一种隐藏连接字符串的方式. 代码如下: ...
- 在线修改GTID模式
在线修改GTID模式 1. 在每一台机器上执行命令 SET @@GLOBAL.ENFORCE_GTID_CONSISTENCY = WARN; 这是很重要的一步,必须确保服务器上没有违反GTID规范的 ...
- readonly、disabled、display、visible的区别
display和visible的区别: (1)首先说明的是display:none和visible:hidden都能够实现将网页上某个元素隐藏起来. (2)如果在样式文件或页面文件代码中直接用disp ...
- MySQL性能优化之max_connections参数
很多开发人员都会遇见”MySQL: ERROR 1040: Too many connections”的异常情况,造成这种情况的一种原因是访问量过高,MySQL服务器抗不住,这个时候就要考虑增加从服务 ...
- Python 对象学习一
# 对象的基本理论 # 什么是对象? # 万物皆对象 # 对象是具体物体 # 拥有属性 # 拥有行为 # 把很多零散的东西,封装成为一个整体 # 举例:王二小 # 属性 # 姓名 # 年龄 # 身高 ...
- redhat6.4 数据包无法到达
由于redhat在初始化的时候,防火墙设置为icmp-host-prohibited,导致数据包无法到达. 具体iptables(所在目录/etc/sysconfig)如下: # Firewall c ...