美文网首页前端程序员的那些事儿程序员
AngularJS入门教程-过滤器(五)

AngularJS入门教程-过滤器(五)

作者: 憨厚的老菜鸟 | 来源:发表于2016-06-16 15:27 被阅读101次

    今天,我们来了解一下AngularJS的过滤器。AngularJS的filter分内置的过滤器和自定义的过滤器,这里主要介绍一下AngularJS的内置过滤器。

    AngularJS的内置过滤器共有九种,
    1、uppercase

    开发环境

    Sublime Text(建议使用)
    AngularJS-1.5.6

    示例

    AngularJS内置过滤器共有九种,下面我会逐个举例介绍。

    1、uppercase 转换成大写

    代码:

    //html
    <div ng-app>
      {{"angularjs"| uppercase}}
    </div>
    

    运行结果:

    ANGULARJS
    

    代码解释:

    过滤器(filter):

    {{"angularjs"| uppercase}}
    

    这里,我们看到在双大括号表达式中,多一个管道符号“|”,这就是AngularJS的语法,如果需要在表达式中使用过滤器,就需要使用管道符“|”,从运行结果中,我们可以看到,uppercase过滤器,将小写的字符全部转换成了大写。

    2、lowercase 转换成小写

    代码:

    <div ng-app>
      {{"ANGULARJS"| lowercase}}
    </div>
    

    运行结果:

    angularjs
    

    代码解释:
    不难看出,这个过滤器和上一个过滤器正好相反,是将所有的字符转换成小写。

    3、json 转换son格式

    代码:

    <div ng-app>
     {{ {name:'abc',sex:0}|json }}
    </div>
    

    运行结果:

    { "name": "abc", "sex": 0 }
    

    代码解释:

    将一个非json格式对象,转换成json格式。

    4、date 时间格式化

    代码:

    <div ng-app>
     {{1304375948024 | date:"yyyy-MM-dd hh:mm:ss"}}
    </div>
    

    运行结果:

    2011-05-03 06:39:08
    

    5、number 数字格式化

    代码:

    <div ng-app>
      {{3.1415 | number:2}}
      <br>
      {{ 1234567 | number }} 
    </div>
    

    运行结果:

    3.14 
    1,234,567
    

    代码解释:
    这里说明一下,number:2将保留两位小数,自动四舍五入。

    6、currency 货币格式化

    代码:

    <div ng-app>
            {{ 100 | currency }}  
        <br>               
        {{ 100 | currency:"¥" }} 
    </div>
    

    运行结果:

    $100.00 
    ¥100.00
    

    代码解释:
    currency过滤器,默认是$,如果想使用其他的货币符号,就需要在currency后加上相应的货币符号,如currency:"¥"

    7、filter 查找

    代码:

    <div ng-app>
        {{ 
            [{"name":"张三","sex":"男"},
            {"name":"李四","sex":"女"},
            {"name":"王五","sex":"男"}] | filter:{'sex':'女'}
        }} 
    </div>
    

    运行结果:

    [{"name":"李四","sex":"女"}]
    

    代码解释:
    根据在过滤器filter中给定的条件filter:{'sex':'女'},在对象数组中,查找符合该条件的对象。

    8、limitTo字符串截取,对象截取。

    代码:

    <div ng-app>
        {{"abcde"|limitTo:2}}
        {{ 
            [{"name":"张三","sex":"男"},
            {"name":"李四","sex":"女"},
            {"name":"王五","sex":"男"}] | limitTo:1
        }} 
    </div>
    

    运行结果:

    ab
    [{"name":"张三","sex":"男"}]
    

    9、orderBy 排序

    代码:

    <div ng-app>
    升序:
        {{ 
            [{"id":2,"name":"张三","sex":"男"},
            {"id":3,"name":"李四","sex":"女"},
            {"id":1,"name":"王五","sex":"男"}] | orderBy:'id'
        }} 
    <br>
    降序:
    {{ 
            [{"id":2,"name":"张三","sex":"男"},
            {"id":3,"name":"李四","sex":"女"},
            {"id":1,"name":"王五","sex":"男"}] | orderBy:'id':true
        }} 
    </div>
    

    运行结果:

    升序:
    [{"id":1,"name":"王五","sex":"男"},{"id":2,"name":"张三","sex":"男"},{"id":3,"name":"李四","sex":"女"}]
    降序:
    [{"id":3,"name":"李四","sex":"女"},{"id":2,"name":"张三","sex":"男"},{"id":1,"name":"王五","sex":"男"}]
    

    至此,AngularJS中内置的过滤器介绍完了。

    相关文章

      网友评论

        本文标题:AngularJS入门教程-过滤器(五)

        本文链接:https://www.haomeiwen.com/subject/jxlydttx.html