感觉自己活了半辈子从来没写过博客,这可是头一回,而且不是记事是为了学习,先恭喜恭喜自己,有一个很好的开端,不管能不能半途而废,反正是想着为了学习做点什么。
这回有家了,一时半会也不知道写点什么了,反正也是自己记录一些东西,随便写吧。
var arr = [{name:"a",age:16},{name:"b",age:106},{name:"c",age:20},{name:"d",age:23}];
根据age排序name,最终要求输出结果 a,c,d,b;
最终完成
<script> var arr = [{name:"a",age:16},{name:"b",age:106},{name:"c",age:20},{name:"d",age:23}]; arr.sort(function(a,b){return a.age>b.age;}); for(var i=0;i<arr.length;i++){ console.log(arr[i].name) } </script>
其实早就知道sort()有排序功能,只不过没想到能这么用
分析:
如果给一个数组排序的话,一般会这么写
var arr=[1,3,2,4,5]; arr.sort(); console.log(arr);
再改进一下的话这么写
var arr=[1,3,2,4,5]; arr.sort(function(a,b){return a-b}); console.log(arr);
后来听了讲课才知道,一开始的时候是这么写的,其实就是按顺序拿两个数来比较大小
var arr=[1,103,2,4,5]; arr.sort(function(a,b){ if(a<b){ return -1; } else if(a>b){ return 1; } else{ return 0; } }); console.log(arr);
只不过,返回-1,也可以写成-5,-0.5...任意负数都可以
改成a-b以后,可以是负数可以是整数也可以是0
时间: 2024-12-07 20:36:49