• 使用vue实现数组排序输出


    在学习vue指令的时候发现一个JavaScript数组的坑,记录一下

    (1)数组排序处理

    <div id="app">
          <ul>
              <li v-for="item in sortItems">
                  {{item}}
              </li>
          </ul>
        </div>
    
        <script type="text/javascript">
            var app=new Vue({
                el:'#app',
                data:{
                    items:[20,23,7,89,66,45]
                },
                computed:{
                    sortItems:function(){
                        return this.items.sort();
                    }
                },
            });

    结果如下:

    为了解决这个问题做出如下处理:

     <script type="text/javascript">
            var app=new Vue({
                el:'#app',
                data:{
                    items:[20,23,7,89,66,45]
                },
                computed:{
                    sortItems:function(){
                        return this.items.sort(sortNumber);
                    }
                },
            });
            // 排序处理
            function sortNumber(a,b){
                return a-b
            }
        </script>

    处理后的结果:

     (2)数组对象方法排序处理

    <div id="app">
          <ul>
            <li v-for="student in sortStudent">
                {{student.name}} - {{student.age}}
            </li>
          </ul>
        </div>
    
        <script type="text/javascript">
            var app=new Vue({
                el:'#app',
                data:{
                    students:[
                        {name:'jspang',age:32},
                        {name:'Panda',age:30},
                        {name:'PanPaN',age:21},
                        {name:'King',age:45}
                    ]
                },
                computed:{
                    sortStudent:function(){
                        return sortByKey(this.students,'age');
                    }
                },
            });
            // 数组对象方法排序:
            function sortByKey(array,key){
                return array.sort(function(a,b){
                    var x=a[key];
                    var y=b[key];
                    return ((x<y)?-1:((x<y)?1:0));
                });
            }
        </script>
  • 相关阅读:
    寄存器英文全称
    汇编指令介绍
    汇编指令的基本知识
    第一篇
    Windows下让Git记住用户名密码(https)
    javascript 汉字拼音排序
    KO.js学习笔记(一)
    学javascript突发奇想,只用浏览器就能转换进制
    谨此纪念我的技术成长之路
    委托与事件
  • 原文地址:https://www.cnblogs.com/-ting/p/12708619.html
Copyright © 2020-2023  润新知